PHP文件相关常用函数
use \Phalcon\DI\FactoryDefault;
$config_file = FactoryDefault::getDefault()->get('config')->globals->config_path . "config.xml";
$config_file_handle = null;
if (is_writable($config_file)) {
$config_file_handle = fopen($config_file, "r+");
} else {
// open in read-only mode
$config_file_handle = fopen($config_file, "r");
}
if (flock($config_file_handle, LOCK_EX)) {
fseek($config_file_handle, 0);
ftruncate($config_file_handle, 0);
fwrite($config_file_handle, $xml_text);
// flush, unlock, but keep the handle open
fflush($config_file_handle);
flock($config_file_handle, LOCK_UN);
}
目录
4.ftruncate() 函数把打开文件截断到指定的长度。
5.fwrite() 函数写入文件(可安全用于二进制文件)。
7. stream_get_contents — 读取资源流到一个字符串,返回一个字符串 或者在失败时返回 FALSE.
8.simplexml_load_string() 函数转换形式良好的 XML 字符串为 SimpleXMLElement 对象。
1.fopen() 函数打开一个文件或 URL。
如果 fopen() 失败,它将返回 FALSE 并附带错误信息。您可以通过在函数名前面添加一个 '@' 来隐藏错误输出。
语法
fopen(filename,mode,include_path,context)
参数 | 描述 |
---|---|
filename | 必需。规定要打开的文件或 URL。 |
mode | 必需。规定您请求到该文件/流的访问类型。 可能的值:
|
include_path | 可选。如果您还想在 include_path(在 php.ini 中)中搜索文件的话,请设置该参数为 '1'。 |
context | 可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。 |
2.flock() 函数锁定或释放文件。
如果成功,该函数返回 TRUE。如果失败,则返回 FALSE。
语法
flock(file,lock,block)
参数 | 描述 |
---|---|
file | 必需。规定要锁定或释放的已打开的文件。 |
lock | 必需。规定要使用哪种锁定类型。 可能的值:
|
block | 可选。若设置为 1,则当进行锁定时阻塞其他进程。 |
3.fseek() 函数在打开的文件中定位。
该函数把文件指针从当前位置向前或向后移动到新的位置,新位置从文件头开始以字节数度量。
成功则返回 0;否则返回 -1。注意,移动到 EOF 之后的位置不会产生错误。
语法
fseek(file,offset,whence)
参数 | 描述 |
---|---|
file | 必需。规定要在其中定位的文件。 |
offset | 必需。规定新的位置(从文件头开始以字节数度量)。 |
whence | 可选。可能的值:
|
4.ftruncate() 函数把打开文件截断到指定的长度。
如果成功则返回 TRUE,如果失败则返回 FALSE。
语法
ftruncate(file,size)
参数 | 描述 |
---|---|
file | 必需。规定要截断的打开文件。 |
size | 必需。规定新的文件大小。 |
5.fwrite() 函数写入文件(可安全用于二进制文件)。
语法
fwrite(file,string,length)
参数 | 描述 |
---|---|
file | 必需。规定要写入的打开文件。 |
string | 必需。规定要写入文件的字符串。 |
length | 可选。规定要写入的最大字节数。 |
说明
fwrite() 把 string 的内容写入文件指针 file 处。 如果指定了 length,当写入了 length 个字节或者写完了 string 以后,写入就会停止,视乎先碰到哪种情况。
fwrite() 返回写入的字符数,出现错误时则返回 false。
6.fflush() 函数向打开的文件写入所有的缓冲输出。
如果成功则返回 TRUE,如果失败则返回 FALSE。
语法
fflush(file)
参数 | 描述 |
---|---|
file | 必需。规定要检查的打开文件流。 |
7. stream_get_contents — 读取资源流到一个字符串,返回一个字符串 或者在失败时返回 FALSE
.
说明
stream_get_contents ( resource $handle
[, int $maxlength
= -1 [, int $offset
= -1 ]] ) : string
与 file_get_contents() 一样,但是 stream_get_contents() 是对一个已经打开的资源流进行操作,并将其内容写入一个字符串返回。 返回的内容取决于 maxlength
字节长度和 offset
指定的起始位置。
参数
handle
(resource):一个资源流(例如 fopen() 操作之后返回的结果)
maxlength
(integer):需要读取的最大的字节数。默认是-1(读取全部的缓冲数据)。
offset
(integer):在读取数据之前先查找指定的偏移量。如果这个数字是负数,就不进行查找,直接从当前位置开始读取。
8.simplexml_load_string() 函数转换形式良好的 XML 字符串为 SimpleXMLElement 对象。
语法
simplexml_load_string(data,classname,options,ns,is_prefix);
参数 | 描述 |
---|---|
data | 必需。规定形式良好的 XML 字符串。其他参数可选 |