php file_put_contents 将一个字符串写入/追加到文件

时间:2016-09-01
php file_put_contents函数用于将字符串写入或追加到文件,如何文件不存在则创建文件,本文章向大家介绍file_put_contents函数的使用方法和实例,需要的朋友可以参考一下。

file_put_contents语法介绍

file_put_contents — 将一个字符串写入文件 

语法:

int file_put_contents  ( string $filename  , mixed  $data  [, int $flags  = 0  [, resource $context  ]] )

和依次调用 fopen() , fwrite()  以及 fclose()  功能一样。 

If filename does not exist, the file is created. Otherwise, the existing file is overwritten, unless the FILE_APPEND  flag is set. 

参数:

  • filename 要被写入数据的文件名。 
  • data 要写入的数据。类型可以是 string,array或者是 stream资源(如上面所说的那样)。 如果 data 指定为 stream 资源,这里 stream 中所保存的缓存数据将被写入到指定文件中,这种用法就相似于使用 stream_copy_to_stream() 函数。 参数 data 可以是数组(但不能为多维数组),这就相当于 file_put_contents($filename, join('', $array))。 
  • flags flags 的值可以是以下 flag 使用 OR (|) 运算符进行的组合。 

       FILE_USE_INCLUDE_PATH   在 include 目录里搜索 filename。 更多信息可参见 include_path。  

       FILE_APPEND   如果文件 filename 已经存在,追加数据而不是覆盖。  

       LOCK_EX   在写入时获得一个独占锁。  

  • context 一个 context 资源。 

返回值:

该函数将返回写入到文件内数据的字节数,失败时返回 FALSE 

file_put_contents实例

<?php
$zip = 98052;
$weather_page = file_get_contents('http://www.demo.com/z.php?inputstring=' . $zip);
$page = strstr($weather_page,'Detailed Forecast');
$table_start = strpos($page, '<table');
/*  http://www.manongjc.com/article/1431.html */
$table_end  = strpos($page, '</table>') + 8;
$forecast = substr($page, $table_start, $table_end - $table_start);
print $forecast;
file_put_contents("weather-$zip.txt", $forecast);
?>