file_get_contents(filename)

1
2
3
<?php
$str = file_get_contents("file.txt");
echo "$str";

其中file.txt文件和上述脚本在同一目录。
文件内容如下:

我们的运行结果为:

可以得出file_get_contents的作用:
将文件的所有内容读取到字符串,如果有换行,则以空格分隔,如果有多行换行,还是以一个空格来分隔。

值得一提的是,file_get_contents除了能够打开计算机的本地文件之外,还能够获取远程网页的返回内容。
例如:

1
2
3
<?php
$str = file_get_contents("http://www.baidu.com");
echo "$str";

执行结果:

我们可以看到,我们获取了百度搜索首页的内容。
再比如:

1
2
3
<?php
$str = file_get_contents("http://drac0nids.top");
echo "$str";

执行结果:

但是,file_get_contents()对https协议的网页是不会有返回的:
比如:

1
2
3
<?php
$str = file_get_contents("https://www.baidu.com");
echo "$str";

这个是加了https的百度首页,运行结果如下:


file_put_contents(filename,data)
该函数将字符串或数组写入文件

1
2
3
<?php
$str = "you must be a beautiful girl";
file_put_contents("file.txt", $str);

执行后我们查看file.txt文件:

如果字符串中有换行符,那么使用file_put_contents后file.txt文件中是怎样存在的呢?

1
2
3
<?php
$str = "you must be \n \na beautiful girl";
file_put_contents("file.txt", $str);

执行后我们来查看file.txt文件的内容:

看来,file_put_contents会将\n解为换行,有几个\n就解析几个换行。

我们再来测试一下,用file_put_contents将数组元素输入到文件中:

1
2
3
<?php
$arr = array(1, "2", "abc", ' ', "hello");
file_put_contents("file.txt", $arr);

执行上述脚本后我们查看file.txt文件的内容:

可以看出,将数组元素读取入文件时,相邻两个元素之间不会有分隔。

最后更新: 2018年03月16日 00:40

原始链接: http://drac0nids.top/2018/03/15/file-get-contents和file-put-contents/

× 请我吃糖~
打赏二维码