首页 > 编程技术 > php

php session_cache_limiter session_cache_expire等函数

发布时间:2016-11-25 17:40

session_cache_limiter() 返回当前缓存限制的名字. 如果指定了 cache_limiter, 当前的缓存限制的名字被改为新值. 缓存限制控制着 HTTP 头发送到客户端的缓存控制. 这些确定页面内容规则的头内容可以被缓存.如果设置缓存设置为没有缓存(nocache), 将不允许任何客户端缓存. 但是公共变量可以允许缓存. 他也可以设置为私有的,这个比公共的多一点限制.

缓存显示在请求开始时被重新设置为 session_cache_limiter  的默认值.这样,你需要在每次请求时调用 session_cache_limiter() for every request (在 session_start() 调用前).

设置cache限制为'private'
*/

session_cache_limiter('private');
$cache_limiter=session_cache_limiter();
/*设置session的过期时间为30秒*/
session_cache_expire(30);
$cache_expire=session_cache_expire();
/*初始化session*/
session_start();
/*输出结果内容*/
echo "当前的session cache限制被设置为:$cache_limiter<br />";
echo "当前的session过期时间为:$cache_expire minutes";
/*
输出结果为:
the cache limiter is now set to private
the cached session pages expire after 30 minutes


*/

//实例二

/*设置caceh限制者为'private'*/
session_cache_limiter('private');
/*返回caceh限制者*/
$cache_limiter=session_cache_limiter();
echo "当前的session cache限制被设置为:$cache_limiter<br />";


//实例三

$filename="test.mpeg";
$filepath="test.mpeg";
session_start();
/*初始化session*/
session_commit();
/*输出请求的文件*/
header("content-type: audio/x-mpeg");  //或者其他类型的文件
header("content-disposition:attachment;filename=".$filename);
header("content-length:".$filesize);
header("content-transfer-encoding:binarynn");
header("pragma:no-cache");
header("expires:0");
$file_contents=file_get_contents($filepath);
print($file_contents

);

utf8_encode() 函数把 iso-8859-1 字符串编码为 utf-8。

utf8_encode(string);
*/
$str="你好,世界!";        //定义字符串
$result=utf8_decode($str);      //进行编码转换
echo $result;         //输出转换结果


//实例二

/*
utf8_decode() 函数把 utf-8 字符串解码为 iso-8859-1。

该函数把用 utf-8 方式编码的 iso-8859-1 字符串转换成单字节的 iso-8859-1 字符串。

如果成功,该函数将返回解码字符串;否则返回 false。

utf8_decode(string)

*/

$str="hello world!";        //定义字符串
$result=utf8_decode($str);      //进行编码转换
echo $result;
$result=utf8_encode($result);      //进行编码转换
echo $result;         //输出转换结果
?>

escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。

语法
escape(string)参数 描述
string 必需。要被转义或编码的字符串。

返回值
已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列

function php教程escape($str)
{
         $sublen=strlen($str);
         $retrunstring="";
         for ($i=0;$i<$sublen;$i++)
         {
                  if(ord($str[$i])>=127)
                  {
                           $tmps教程tring=bin2hex(iconv("gb2312","ucs-2",substr($str,$i,2)));
                           //$tmpstring=substr($tmpstring,2,2).substr($tmpstring,0,2);window下可能要打开此项
                           $retrunstring.="%u".$tmpstring;
                           $i++;
                  } else {
                           $retrunstring.="%".dechex(ord($str[$i]));
                  }
         }
         return $retrunstring;


unescape() 函数可对通过 escape() 编码的字符串进行解码。

语法
unescape(string)参数 描述
string 必需。要解码或反转义的字符串。

返回值
string 被解码后的一个副本。

说明
该函数的工作原理是这样的:通过找到形式为 %xx 和 %uxxxx 的字符序列(x 表示十六进制的数字),用 unicode 字符 u00xx 和 uxxxx 替换这样的字符序列进行解码。

php处理

function unescape($str) {
         $str = rawurldecode($str);
         preg_match_all("/%u.{4}|&#x.{4};|&#d+;|.+/u",$str,$r);
         $ar = $r[0];
         foreach($ar as $k=>$v) {
                  if(substr($v,0,2) == "%u")
                           $ar[$k] = iconv("ucs-2","gbk",pack("h4",substr($v,-4)));
                  elseif(substr($v,0,3) == "&#x")
                           $ar[$k] = iconv("ucs-2","gbk",pack("h4",substr($v,3,-1)));
                  elseif(substr($v,0,2) == "&#") {
                           $ar[$k] = iconv("ucs-2","gbk",pack("n",substr($v,2,-1)));
                  }
         }
         return join("",$ar);
}

tempnam() 函数创建一个具有唯一文件名的临时文件。若成功,则该函数返回新的临时文件名。若失败,则返回 false。

语法
tempnam(dir,prefix)


*/
function dir_wriable($dir)         //自定义函数扩展建立临时文件
{
  $test=tempnam("$dir","test_file");       //建立临时文件
  if($fp=@fopen($test,"w"))        //如果文件成功打开
  {
    @fclose($fp);          //关闭文件
    @unlink($test);          //删除文件
    $wriable="ture";          //返回值为真
  }
  else
  {
    $wriable=false or die("cannot open $test!");    //返回值为假
  }
  return $wriable;          //返回布尔型值
}
if(dir_wriable(str_replace('//','/',dirname(__file__))))    //调用自定义函数
{
  $dir_wriable='建立文件成功';
}
else
{
  $dir_wriable='建立文件失败';
}

/*
如果 php教程 不能在指定的 dir 参数中创建文件,则退回到系统默认值。

注释:本函数的行为在 4.0.3 版中改变了。也会建立一个临时文件以避免竞争情形,即有可能会在产生出作为文件名的字符串与脚本真正建立该文件之间会在文件系统中存在同名文件。注意,如果不再需要该文件则要删除此文件,不会自动删除的。

tmpfile() 函数以读写(w+)模式建立一个具有唯一文件名的临时文件。

文件会在关闭后(用 fclose())自动被删除,或当脚本结束后。


*/

$temp = tmpfile();

fwrite($temp, "testing, testing.");

//倒回文件的开头
rewind($temp);

//从文件中读取 1k
echo fread($temp,1024);

//删除文件
fclose($temp);

md5($str) 给字符串进行哈希加密

实例
*/
$str="hello world";          //定义字符串
$result=md5($str);          //执行加密操作
echo $result;           //输出转换后的结果

//md5_file( $filepath) 对文件内容进行哈希加密

$file="test.txt";           //定义文件
$result=md5_file($file);         //执行计算操作
echo $result;           //输出计算后的结果

/*

md5_file() 函数计算文件的 md5 散列。

md5() 函数使用 rsa 数据安全,包括 md5 报文摘译算法。

如果成功,则返回所计算的 md5 散列,如果失败,则返回 false。

标签:[!--infotagslink--]

您可能感兴趣的文章: