文件函数库

  /*
  * 文件函数库
  *  创建文件过程
  *   1.文件名 $fileName
  *   2.打开文件,并以什么模式打开。fopen
  *   3.向文件中写入内容 fwrite
  *   4.关闭文件 fclose
  * 
  *  文件模式
  *   'r' 只读方式打开,将文件指针指向文件头。
  *   'r+'读写方式打开,将文件指针指向文件头。
  *   'w'写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
  *   'w+'读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
  *   'a'写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
  *   'a+'读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
  * */
$fileName="a.txt";//文件名
$handle=fopen($fileName,"a+");//创建并a+模式打开
fwrite($handle,"abcdefghijklmn");//添加内容
fclose($handle);//关闭文件
 
 
/*
 * 读取文件过程
 *   1.文件名 $name
 *   2.打开文件,并以什么模式打开 fopen
 *   3.打开文件,并读取多少个字符 filesize
 *   4.读取文件 fread
 *   5.输出语文件 
 *   6.关闭文件 fclose
 */ 
 
 $name="a.txt";//文件名
 $fop=fopen($name,"a+");//以a+模式打开
 $filsize=filesize($name);//获取文件长度,
 $str=fread($fop,$filsize);//读取文件内容
 echo $str;//输出内容
 fclose($fop);//关闭文件
 
 //实例创建html文件,可以创建的文件有.txt .php .html doc ...
 $fop=fopen("a.html","a+");
 $str="<div style='color:red'>张三</div>";
 $fw=fwrite($fop,$str);
 fclose($fop);

 

序列化数据

/*
 * 序列化数据(存取有规则的数据)
 *  serialize() 序列化函数  :产生一个可存储的值的表示 
 *   格式:string serialize ( mixed $value )
 *  unserialize()反序列化 
 *   格式:mixed unserialize ( string $str )
 * */
$str="ab";
echo serialize($str);//s类型:2个数:"ab"值;
$i=7;
echo serialize($i);//i类型:7值;
$f=3.14;
echo serialize($f);//d类型:3.1400...近似值;
$b=false;
echo serialize($b);//b类型:0值;
$t=true;
echo serialize($t);//b类型:1值;
$arr=array(123,"张三","李四");
echo serialize($arr);//a类型:3元素个数:{i下标类型:0下标;i值的类型:123值;...;}
/*
 * 实例:把序列化后的数据存入文件中
 * */
$handle=fopen("arr.txt","a+");//创建,并以a+模式打开
fwrite($handle,serialize($arr));//将序列化后的数据存入到文件中
fclose($handle);//关闭文件,最后返回的内容是a:3:{i:0;i:123;i:1;s:4:"张三";i:2;s:4:"李四";}
/*
 * 实例:读取序列存入文件中的内容
 * */
$handble=fopen("arr.txt","a+");//创建并以a+模式打开
$str=fread($handble,filesize("arr.txt"));//读取文件内容
$arr=unserialize($str);//反序列化
print_r($arr);//打印数组,Array ( [0] => 123 [1] => 张三 [2] => 李四 )

 

文件包含

/*
 * 文件包含
 *   include(被包含的URL);
 *    如果被包含文件找不到,提示的错误是一个警告,后边代码继续执行
 *   require(被包含的URL);
 *    如果被包含文件找不到,提示的错误是一个致命,后边代码不执行
 *   ps:include和require相同文件会重复引用
 * 
 *   include_once(被包含文件的url);
 *    警告 后边代码执行 
 *   require_once(被包含文件的url); 
 *    致命,后边代码不执行
 *   ps:后面带_once,只能引用相同文件一次
 * 
 *   set_include_path() 设定默认的包含路径的。
 *   被包含的文件遵循相对路径规则。
 * */
include("top.php");//代码会重复出现
include_once("top.php");//只能引用相同文件一次
require("top.php");//代码会重复出现
require_once("top.php");//代码只会出现一次
set_include_path("D:\AppServ\www\set_include_path");//设置默认路径
include("set_include_path.php");//包含文件