程序员人生 网站导航

PHP把数组写入文件实例代码

栏目:php教程时间:2013-10-19 21:14:27

在php中数组写入文件的方法有很多种,像我们要做成缓存文件就会把php数组转换成文件然后保存到.php文件,调用时直接调用此文件即可。

php把数组写入文件,通过序列和反序列实现,请看如下代码:

  1. $file="./data/file.cache"
  2. file_put_contents($file,serialize($array));//写入缓存 
  3. <?php  
  4. $file="./data/file.cache";  
  5. $array = array("count" => "3000",  
  6. "num"  =>"300");  
  7. //缓存  
  8. file_put_contents($file,serialize($array));//写入缓存  
  9. ?> 
  10. <?  
  11. $file="./data/file.cache";  
  12. $handle = fopen($file"r");  
  13. $cacheArray = unserialize(fread($handlefilesize ($file)));  
  14. print_r($cacheArray);  
  15. ?> 

将一个测试的数组写入一个PHP文件,代码如下:

  1. <?php //要写入PHP文件的数组 
  2. $write_array = array'1' => 'oneone''2' => 'two''3' => 'three''4' => 'four''5' => 'five' ); //字符串处理  
  3. $string_start = "<?phpn"$string_process = var_export($write_array, TRUE); $string_end = "n?>"$string = $string_start.$string_process.$string_end//开始写入文件  
  4. echo file_put_contents('test_array.php'$string);  
  5. ?> 

这里用到了两个函数:

var_export():var_export — 用来输出或返回一个变量的字符串表示,它和 var_dump() 的区别是,var_export() 可以用来返回关于传递给该函数的变量的结构信息,并且其返回的表示是合法的 PHP 代码如果 “echo $string_process;”,则可以看到输出结果:array(1 => 'oneone', 2 => 'two', 3 => 'three', 4 => 'four', 5 => 'five',),而它就是我们要写入 test_array.php 文件的内容(除去 php 标签);

var_dump()函数用来打印变量的相关信息,它只用来“打印”,而不会返回值,它的原型是 void var_dump(……),我们来 “var_dump($string_process);”,则可以看到输出结果:

string(86) "array ( 1 => 'oneone', 2 => 'two', 3 => 'three', 4 => 'four', 5 => 'five', )" 

可以看到输出的string(86) “…”,再一次说明了 var_export() 返回的是一个字符串.

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐