自定session 保存路径 删除,注销 ,写入函数

 更新时间:2016年11月25日 16:49  点击:2062

*/
$sessionpath=session_save_path();        //获取当前session的保存路径
echo $sessionpath;
if(strpos($sessionpath,";")!==false)        //如果路径中存在分号
{
  $sessionpath=substr($sessionpath,strpos($sessionpath,";")+1);  //设置新的路径
}


function open($save_path,$session_name)      //定义打开函数
{
  global $sess_save_path,$sess_session_name;     //预定义session路径及名称
  $sess_save_path=$save_path;        //定义保存路径
  $sess_session_name=$session_name;       //定义session名称
  return(true);            //返回真值
}
function close()            //定义关闭函数
{
  return(true);            //直接返回真值
}
function read($id)           //定义读取函数
{
  global $sess_save_path,$sess_session_name;     //预定义保存路径与名称
  $sess_file="$sess_save_path/sess_$id";      //定义文件
  if(fopen($sess_file,"r">$fp=@fopen($sess_file,"r"))        //打开文件
  {
    $sess_data=fread($fp,filesize($sess_file));      //读取文件
    return($sess_data);          //返回读取内容
  }
  else
  {
    return("");            //如果读取失败必须返回空值
  }
}
function write($id,$sess_data)         //定义写入函数
{
  global $sess_save_path,$sess_session_name;     //预定义保存路径与名称
  $sess_file="$sess_save_path/sess_$id";      //定义文件
  if($fp=@fopen($sess_file,"w"))        //打开文件
  {
    return(fwrite($fp,$sess_data));        //执行写操作
  }
  else
  {
   return(false);           //如果打开失败返回错误
  }
}
function destroy($id)           //定义注销函数
{
  global $sess_save_path,$sess_session_name;
  $sess_file="$sess_save_path/sess_$id";      //指明文件
  return(@unlink($sess_file));         //删除session文件
}
function gc($maxlifetime)          //定义过期函数
{
  return true;            //直接返回真值
}
session_set_save_handler("open","close","read","write","destroy","gc"); //设置函数
session_start();            //初始化session
//以下就可以继续正常地使用session
?>

ftp_connect() 函数建立一个新的 ftp 连接。

若成功,则返回一个连接标识,否则返回 false。

语法
ftp_connect(host,port,timeout)

*/
$file='public_html/index.php教程';         //定义文件
$conn_id=ftp_connect($ftp_server);        //连接到指定的ftp服务器
$login_result=ftp_login($conn_id,$ftp_user_name,$ftp_user_pass);  //用指定用户名登录
if(ftp_chmod($conn_id,0644,$file)!==false)      //设置文件的模式
{
  echo "$file chmoded successfully to 644n";      //输出信息
}
else
{
  echo "could not chmod $filen";        //如果设置失败输出信息
}
ftp_close($conn_id);           //关闭ftp连接

/*
ftp_chmod() 函数设置 ftp 服务器上指定文件的权限。

若成功,则该函数返回新的权限。否则返回 false。

语法
ftp_chmod(ftp_connection,mode,file)
*/

$ftp_server="ftp.example.com";          //定义ftp服务器
$ftp_user="foo";            //定义用户名
$ftp_pass="bar";            //定义用户对应的密码
$conn_id=ftp_connect($ftp_server)or die("couldn't connect to $ftp_server"); //连接到指定ftp服务器
if(@ftp_login($conn_id,$ftp_user,$ftp_pass))       //如果成功登录
{
  echo "connected as $ftp_user@$ftp_servern";      //输出相应信息
}
else
{
  echo "couldn't connect as $ftp_usern";        //输出不能登录的信息
}
/*

ftp_login() 函数登录 ftp 服务器。

若成功则返回 true,失败则返回 false 并发出一个警告。

语法
ftp_login(ftp_connection,username,password)参数 描述
ftp_connection 必需。规定要使用的 ftp 连接(ftp 连接的标识符)。
username 必需。规定用于登录的用户名。
password 必需。规定用于登录的密码。

代码扩充获取远程主机socket信息*/
function getpeername()
{
  $remote_ip=$remote_port=0;         //定义ip
  socket_getpeername($this->fd,$remote_ip,$remote_port);   //返回主机信息
  return array($remote_ip,$remote_port);       //返回一个数组
}

?>

<?php教程
if(false==($socket=@socket_create(af_inet,sock_stream,sol_tcp)))  //如果创建socket失败
{
  die("couldn't create socket, error code is:".socket_last_error().",error message is: " . socket_strerror(socket_last_error()));          //输出错误信息与错误代码
}
?>

<?php
/*以下代码扩充获取本地主机socket信息*/
function getsockname()
{
  $remote_ip=$remote_port=0;         //定义ip
  socket_getsockname($this->fd,$remote_ip,$remote_port);   //返回主机信息
  return array($remote_ip,$remote_port);       //返回一个数组
}
?>


<?php
/*定义欲读取的数组*/
$read=array($socket1,$socket2);
/*执行操作*/
$num_changed_sockets=socket_select($read,$write=null,$except=null,0);
if($num_changed_sockets===false)
{
  /*error handling*/
}
else if($num_changed_sockets>0)
{
  /*at least at one of the sockets something interesting happened*/
}

stream_context_create创建并返回一个文本数据流并应用各种选项,可用于fopen(),file_get_contents()等过程的超时设置、代理服务器、请求方式、头信息设置的特殊过程。

函数原型:resource stream_context_create ([ array $options [, array $params ]] )

看个实例

//定义options数组
$opts=array
(
  'http'=>array
  (
    'method'=>"get",
    'header'=>"accept-language: enrn"."cookie: foo=barrn"
  )
);
//创建数据流上下文
$context=stream_context_create($opts);
/*向指定地址发送http请求
请求中包含附加的头部信息*/
$fp=fopen('http://www.111cn.net','r',false,$context);
//输出文件指针处的所有数据
fpassthru($fp);
//关闭文件
fclose($fp);
/*
该代码的输出结果为:即请求的cookie值
array
(
    [foo] => bar
)
*/

实例二

$default_opts=array
(
  'http'=>array
  (
    'method'=>"get",
    'header'=>"accept-language: enrn"."cookie: foo=bar",
    'proxy'=>"tcp://10.54.1.39:8000"
  )
);
$alternate_opts=array
(
  'http'=>array
  (
    'method'=>"post",
    'header'=>"content-type: application/x-www-form-urlencodedrn"."content-length: " . strlen("baz=bomb"),
    'content'=>"baz=bomb"
  )
);
$default=stream_context_get_default($default_opts);
$alternate=stream_context_create($alternate_opts);
/* sends a regular get request to proxy server at 10.54.1.39
* for www.example.com using context options specified in $default_opts
*/
readfile('http://www.example.com');
/* sends a post request directly to www.example.com
* using context options specified in $alternate_opts
*/
readfile('http://www.example.com', false, $alternate);

opendir() 函数打开一个目录句柄,可由 closedir(),readdir() 和 rewinddir() 使用。

 

语法
opendir(path,context)
*/
$d=dir("c:windows");         //打开目录,并赋值给变量
echo "handle:".$d->handle."n";       //输出目录的handel属性
echo "<p>";
echo "path:".$d->path."n";        //输出目录的path属性
echo "<p>";
while(false!==($entry=$d->read()))       //通过循环读取对象的方法
{
  echo $entry."n";
}
$d->close();           //关闭目录句柄


//


$dir="c:windows";          //定义目录
if(is_dir($dir))           //如果变量为目录
{
  if($dh=opendir($dir));         //如果成功打开目录
  {
    echo "目录".$dir."成功打开";
  }
}
echo "<br>";
closedir($dh);          //关闭打开的目录句柄
echo "目录".$dir."已经关闭!";


///

$dir=" c:windows ";          //定义目录变量
if(is_dir($dir))           //判断变量是否为目录
{
  if($dh=opendir($dir))         //判断目录是否成功打开
  {
    while(($file=readdir($dh))!==false)      //循环读取目录中的文件信息
    {
      echo "filename:$file,filetype:".filetype($dir.$file)."n";  //输出文件名及文件类型
    }
    closedir($dh);          //关闭目录句柄
  }
}

///

if($handle=opendir('web'))         //如果目录顺利打开
{
  while(false!==($file=readdir($handle)))      //循环读取目录中的条目
  {
    if($file!="."&&$file!="..")        //如果文件不为当前或上级目录
    {
      echo "$filen";          //输出文件名称
    }
  }
  closedir($handle);          //关闭目录句柄
}

//

if($handle=opendir('08'))         //如果目录顺利打开
{
  while(false!==($file=readdir($handle)))      //循环读取目录中的条目
  {
    if($file!="."&&$file!="..")        //如果文件不为当前或上级目录
    {
      echo "$filen";          //输出文件名称
    }
  }
  rewind($handle);          //倒回目录句柄
  if(readdir($handle))       //判断是否倒回成功
  {
    echo "倒回成功";
  }
  else
  {
    echo "倒回失败";
  }
  closedir($handle);          //关闭目录句柄
}

//如果要对目录按字母排序如一

$files1=scandir($dir);         //按字母升序列出内容到数组
$files2=scandir($dir,1);        //按字母降序列出内容到数组

[!--infotagslink--]

相关文章

  • PHP session_start()很慢问题分析与解决办法

    本文章来给各位同学介绍一下关于PHP session_start()很慢问题分析与解决办法,希望碰到此问题的同学可进入参考。 最近在做东西的时候发现一个问题 有一个接口挂...2016-11-25
  • C#从数据库读取图片并保存的两种方法

    这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
  • C#中txt数据写入的几种常见方法

    这篇文章主要给大家介绍了关于C#中txt数据写入的几种常见方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-10-25
  • PHP分布式框架如何使用Memcache同步SESSION教程

    本教程主要讲解PHP项目如何用实现memcache分布式,配置使用memcache存储session数据,以及memcache的SESSION数据如何同步。 至于Memcache的安装配置,我们就不讲了,以前...2016-11-25
  • c# 对CSV文件操作(写入、读取、修改)

    这篇文章主要介绍了c# 如何对CSV文件操作,帮助大家更好的理解和学习C#,感兴趣的朋友可以了解下...2020-11-03
  • python读取和保存mat文件的方法

    本文主要介绍了python读取和保存mat文件的方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-08-25
  • 详解C#中的session用法

    这篇文章主要介绍了C#中的session用法 ,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • Python3使用Selenium获取session和token方法详解

    这篇文章主要介绍了Python3使用Selenium获取session和token方法详解,需要的朋友可以参考下...2021-02-17
  • python 实现将Numpy数组保存为图像

    今天小编就为大家分享一篇python 实现将Numpy数组保存为图像,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-27
  • 安卓开发之保存ImageView中的图片到本地相册

    下面我们来看一篇关于安卓开发之保存ImageView中的图片到本地相册教程吧,希望这篇教程能够给大家带来帮助. 代码如下. private void saveImage(ImageView imageVi...2016-11-01
  • 编程新手必须掌握的:session与cookie的区别

    session和cookie是网站浏览中较为常见的两个概念,也是比较难以辨析的两个概念,但它们在点击流及基于用户浏览行为的网站分析中却相当关键。基于网上一些文章和资料的参阅,及作者个人的应用体会,对这两个概念做一个简单的阐述...2013-09-11
  • PHP中如何使用session实现保存用户登录信息

    session在php中是一个非常重要的东西,像我们用户登录一般都使用到session这个东西,相对于cookie来说session 要安全很多,同时我们购物车经常使用session来做临时的记录保存哦。使用session保存页面登录信息1、数据库连接...2015-10-21
  • Vue使用axios引起的后台session不同操作

    这篇文章主要介绍了Vue使用axios引起的后台session不同操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-14
  • C#抓取网络图片保存到本地的实现方法

    下面小编就为大家分享一篇C#抓取网络图片保存到本地的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
  • php中session常见问题分析

    PHP的session功能,一直为许多的初学者为难。就连有些老手,有时都被搞得莫名其妙。本文,将这些问题,做一个简单的汇总,以便大家查阅。 1. 错误提示 引用 代...2016-11-25
  • php设置session生存时间详解

    要设置php生存有效时间我们可以利用session_set_cookie_params函数或修改php.ini文件哦,下面小编来介绍一下。 第一种方法:session_set_cookie_params 函数原型 voi...2016-11-25
  • jsp使用sessionScope获取session案例详解

    这篇文章主要介绍了jsp使用sessionScope获取session案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下...2021-08-29
  • C#实现简单获取及设置Session类

    这篇文章主要介绍了C#实现简单获取及设置Session类,涉及C#针对session的设置及获取的技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • Node.js刷新session过期时间的实现方法推荐

    下面小编就为大家带来一篇Node.js刷新session过期时间的实现方法推荐。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-05-20
  • php怎么写日志?php实现的简单日志写入函数

    小编分享了一段php实现的简单日志写入函数的代码,不知道php如何写日志的同学快来看看吧! 代码如下复制代码functionlog($logthis){file_put_contents(&#39;logfil...2017-07-06