php readfile 函数

 更新时间:2016年11月25日 16:51  点击:2241
php readfile 函数

readfile
( PHP 4中, PHP 5中)

readfile -输出一个文件

描述
国际readfile (字符串$文件名[ ,布尔$ use_include_path =虚假[ ,资源$背景] ] )
读取文件并写入它的输出缓冲器。

参数

文件名
该文件被读取。

use_include_path
您可以使用可选的第二个参数设置为TRUE ,如果你想搜索该文件中的include_path中也。

背景
背景流资源。


返回值
返回的字节数读取文件。如果出现错误,虚假,除非返回的功能称为@ readfile ( ) ,错误信息打印。

实例

例如# 1强迫下载使用readfile ( )

<?php
$file = 'monkey.gif';

if (file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename='.basename($file));
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    ob_clean();
    flush();
    readfile($file);
    exit;
}
?>

下面是讲关于is_writable 文件是否可读取写哦。

is_writable
( PHP 4中, PHP 5中)

is_writable -告诉是否filename是写

描述
布尔is_writable (字符串$文件名)
返回TRUE ,如果文件存在且可写。该文件名参数可能是一个目录名称,让您可以检查,如果是可写的目录。

请记住, PHP的可访问该文件的用户ID的Web服务器运行(通常是'谁' ) 。安全模式的限制是没有考虑到。

参数

文件名
正在检查的文件名。


返回值
返回TRUE ,如果文件存在且可写。

实例

例如# 1 is_writable ( )的例子

<?php
$filename = 'test.txt';
if (is_writable($filename)) {
    echo 'The file is writable';
} else {
    echo 'The file is not writable';
}
?>

php file 函数

file
( PHP 4中, PHP 5中)

file-读取整个file到一个数组

描述
一系列file(字符串$file[摘要$国旗= 0 [ ,资源$背景] ] )
读取整个file到一个数组。

注:您可以使用file_get_contents ( )返回file内容作为一个字符串。


参数

file名
file路径。

提示
网址可以用来作为file名与此功能,如果打开包装已启用。见fopen ( )函数的更多细节关于如何指定file名和列表支持的协议/封装协议的列表,支持的URL协议。

旗帜
可选参数可以是一个标志,或以上,以下常数:

FILE_USE_INCLUDE_PATH
搜索该file中的include_path中。
FILE_IGNORE_NEW_LINES
不添加新行结束时,每个数组元素
FILE_SKIP_EMPTY_LINES
跳过空行
FILE_TEXT
返回的内容是在UTF - 8编码。您可以指定一个不同的编码,建立一个自定义的范围内。此标志不能用于FILE_BINARY 。此标志只适用于自PHP 6 。
FILE_BINARY
内容改为二进制数据。这是默认设置,并不能用于FILE_TEXT 。此标志只适用于自PHP 6 。

背景
背景资源创建的stream_context_create ( )函数。


注:情况下,支持加用PHP 5.0.0 。为说明情况,请参阅流功能。



返回值
返回file中的数组。每个元素的数组对应行中的file,仍与换行符重视。一旦失败,file( )返回FALSE 。

注意:每行中所产生的阵列将包括行结尾,除非FILE_IGNORE_NEW_LINES使用,所以你仍然需要使用rtrim ( )如果你不想结束本线。


注:如果PHP没有正确认识到行结尾时,无论是阅读file或创建的Macintosh电脑,使auto_detect_line_endings运行时配置选项可能有助于解决这个问题。

修改

版本说明
6.0.0新增了支援FILE_TEXT和FILE_BINARY旗帜。
5.0.0背景参数增加
5.0.0到PHP 5.0.0之前的旗帜参数只覆盖include_path中,并启用了1
4.3.0file( )成为二进制安全


实例

例如1号file( )的例子

<?php
// Get a file into an array.  In this example we'll go through HTTP to get
// the HTML source of a URL.
$lines = file('http://www.example.com/');

// Loop through our array, show HTML source as HTML source; and line numbers too.
foreach ($lines as $line_num => $line) {
    echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />n";
}

// Another example, let's get a web page into a string.  See also file_get_contents().
$html = implode('', file('http://www.example.com/'));

// Using the optional flags parameter since PHP 5
$trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
?>

php file_get_contents 函数

file_get_contents
( PHP 4中“ = 4.3.0 , PHP 5中)

file_get_contents -读取整个文件转换成字符串

描述
字符串file_get_contents (字符串$文件[摘要$国旗= 0 [ ,资源$背景[摘要$抵消= -1 [摘要$ maxlen = -1 ] ] ] ] )
这个功能类似文件( ) ,但file_get_contents ( )返回的字符串中的文件,开始在指定的抵消最多maxlen字节。如果失败, file_get_contents ( )将返回FALSE 。

file_get_contents ( )是首选的方式读取文件内容为一个字符串。它将使用内存映射技术的支持下,如果您的操作系统,以提高性能。

注:如果您打开的URI的特殊字符,如空格,你需要的URI的编码进行urlencode ( ) 。


参数

文件名
文件名改为。

旗帜
警告
所有之前的版本的PHP 6 ,此参数被称为use_include_path是布尔。国旗参数只适用于自PHP 6 。如果您使用的是旧版本,并希望搜索的文件名中包含路径,这个参数必须是真实的。自PHP 6 ,您必须使用FILE_USE_INCLUDE_PATH国旗代替。

国旗的价值可任意组合下列旗帜(与一些限制) ,加入的二进位或( | )操作符。


可悬挂国旗描述
FILE_USE_INCLUDE_PATH搜索文件名中包含目录。见include_path中获取更多信息。
FILE_TEXT自PHP 6 ,默认编码的读取数据是UTF - 8的。您可以指定一个不同的编码,建立一个自定义的范围内,或通过改变默认使用stream_default_encoding ( ) 。此标志不能用于FILE_BINARY 。
FILE_BINARY有了这个标志,该文件是只读二进制模式。这是默认设置,并不能用于FILE_TEXT 。


背景
资源的有效范围内建立stream_context_create ( ) 。如果你不需要使用自定义的情况下,可以跳过此参数为null 。

抵消
抵销在读启动。

maxlen
最大长度的数据读取。


返回值
该函数返回读取数据或FALSE的失败。

实例

例如# 1 Get和输出源的网页,网站

<?php
$homepage = file_get_contents('http://www.example.com/');
echo $homepage;
?>

Example #2 Searching within the include_path

<?php
// <= PHP 5
$file = file_get_contents('./people.txt', true);
// > PHP 5
$file = file_get_contents('./people.txt', FILE_USE_INCLUDE_PATH);
?>

php file_put_contents 函数

file_put_contents
( PHP 5中)

file_put_contents -写一个字符串到一个文件

描述
国际file_put_contents (字符串$文件名,混合$数据[摘要$国旗= 0 [ ,资源$背景] ] )
这一功能是相同的要求fopen ( )函数, fwrite ( )和fclose ( )先后将数据写入一个文件。

如果文件不存在,该文件的创建。否则,现有的文件被覆盖,除非FILE_APPEND旗帜设置。

参数

文件名
文件路径在哪里写的数据。

数据
这些数据给我们写信。可以是一个字符串,数组或流资源(上面解释) 。

如果数据流的资源,剩下的缓冲区的流将被复制到指定的文件。这是类似使用stream_copy_to_stream ( ) 。

您还可以指定数据参数作为一个单一的层面阵列。这相当于file_put_contents ( $文件名,爆( '' , $阵列) ) 。

旗帜
国旗的价值可任意组合下列旗帜(与一些限制) ,加入的二进位或( | )操作符。


可悬挂国旗描述
FILE_USE_INCLUDE_PATH搜索文件名中包含目录。见include_path中获取更多信息。
FILE_APPEND如果档案filename已经存在,附加数据的文件,而不是覆盖它。
LOCK_EX获得独占锁定的文件,同时着手写作。
FILE_TEXT数据写入的文字模式。如果已启用的Unicode语义,默认字符编码是UTF - 8 。您可以指定一个不同的编码,建立一个自定义的范围内或使用stream_default_encoding ( )来更改默认的。此标志不能用于FILE_BINARY 。此标志只适用于自PHP 6 。
FILE_BINARY数据将被写入二进制模式。这是默认设置,并不能用于FILE_TEXT 。此标志只适用于自PHP 6 。


背景
资源的有效范围内建立stream_context_create ( ) 。


返回值
该函数返回的字节数是写入文件,或FALSE的失败。

实例

例如# 1使用简单的例子

<?php
$file = 'people.txt';
// Open the file to get existing content
$current = file_get_contents($file);
// Append a new person to the file
$current .= "John Smithn";
// Write the contents back to the file
file_put_contents($file, $current);
?>


<?php
$file = 'people.txt';
// The new person to add to the file
$person = "John Smithn";
// Write the contents to the file,
// using the FILE_APPEND flag to append the content to the end of the file
// and the LOCK_EX flag to prevent anyone else writing to the file at the same time
file_put_contents($file, $person, FILE_APPEND | LOCK_EX);
?>

[!--infotagslink--]

相关文章

  • php正确禁用eval函数与误区介绍

    eval函数在php中是一个函数并不是系统组件函数,我们在php.ini中的disable_functions是无法禁止它的,因这他不是一个php_function哦。 eval()针对php安全来说具有很...2016-11-25
  • php中eval()函数操作数组的方法

    在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险了经常会出现一些问题了,今天我们就一起来看看eval函数对数组的操作 例子, <?php $data="array...2016-11-25
  • Python astype(np.float)函数使用方法解析

    这篇文章主要介绍了Python astype(np.float)函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-08
  • Python中的imread()函数用法说明

    这篇文章主要介绍了Python中的imread()函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-16
  • C# 中如何取绝对值函数

    本文主要介绍了C# 中取绝对值的函数。具有很好的参考价值。下面跟着小编一起来看下吧...2020-06-25
  • C#学习笔记- 随机函数Random()的用法详解

    下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • c# 数据类型占用的字节数介绍

    本篇文章主要是对c#中数据类型占用的字节数进行了详细的介绍。需要的朋友可以过来参考下,希望对大家有所帮助...2020-06-25
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • Nest.js参数校验和自定义返回数据格式详解

    这篇文章主要给大家介绍了关于Nest.js参数校验和自定义返回数据格式的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-28
  • C++中 Sort函数详细解析

    这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
  • Android开发中findViewById()函数用法与简化

    findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20
  • 详解Maven profile配置管理及激活profile的几种方式

    这篇文章主要介绍了详解Maven profile配置管理及激活profile的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-26
  • PHP用strstr()函数阻止垃圾评论(通过判断a标记)

    strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。语法:strstr(string,search)参数string,必需。规定被搜索的字符串。 参数sea...2013-10-04
  • Vue 组件复用多次自定义参数操作

    这篇文章主要介绍了Vue 组件复用多次自定义参数操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-27
  • C#中decimal保留2位有效小数的实现方法

    这篇文章主要介绍了C#中decimal保留2位有效小数的实现方法,针对decimal变量保留2位有效小数有多种方法,可以使用Math.Round方法以及ToString先转换为字符串等操作来实现。具体实现方法感兴趣的朋友跟随小编一起看看吧...2020-06-25
  • PHP函数分享之curl方式取得数据、模拟登陆、POST数据

    废话不多说直接上代码复制代码 代码如下:/********************** curl 系列 ***********************///直接通过curl方式取得数据(包含POST、HEADER等)/* * $url: 如果非数组,则为http;如是数组,则为https * $header:...2014-06-07
  • php中的foreach函数的2种用法

    Foreach 函数(PHP4/PHP5)foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。...2013-09-28
  • C# 获取当前月份天数的三种方法总结

    本篇文章主要是对C#中获取目前月份的天数的三种方法进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助...2020-06-25
  • C语言中free函数的使用详解

    free函数是释放之前某一次malloc函数申请的空间,而且只是释放空间,并不改变指针的值。下面我们就来详细探讨下...2020-04-25
  • 解决Springboot get请求是参数过长的情况

    这篇文章主要介绍了解决Springboot get请求是参数过长的情况,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-09-17