opérations sur les fichiers php

不言
Libérer: 2023-03-24 11:42:02
original
4302 Les gens l'ont consulté

Le contenu présenté dans cet article concerne le fonctionnement des fichiers php. Il a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

Bien que ce soit une chose très basique. , j'ai honte. C'est moi mais je n'y connais pas grand chose. J'en ai donc profité pour revoir les

étapes d'écriture d'un fichier

  1. Ouvrir ce fichier. Si le fichier n'existe pas, créez-le.

  2. Créer un verrou de fichier pour empêcher la concurrence

  3. Écrire ces données dans ce fichier

  4. Libérer verrouiller et fermer le handle du fichier

Étapes de lecture du fichier

  1. Ouvrez ce fichier, s'il ne peut pas être ouvert, quittez

  2. Lire les données du fichier

  3. Fermer ce fichier

Opération d'ouverture de fichier

fopen($filename,$mode,$include_path,$context)

Renvoie false si l'ouverture échoue et renvoie l'objet ressource si l'ouverture est réussie.

属性名称 作用
$filename 文件的路径(文件路径的间隔符用‘/’来表示,用’’可能会导致linux不识别)
$mode 文件访问的形式(写
$include_path (可选)从指定目录开始寻找文件所在位置
$context 可选。规定文件句柄的环境。Context 是可以修改流的行为的一套选项。

Remarque :
- Lorsque le préfixe du fichier est ftp://, qui est le serveur de fichiers, cette fonction établira un mode passif pour se connecter au serveur spécifié. Et renvoie un pointeur vers le début du fichier
- Lorsque le préfixe du fichier est http://, une connexion http vers le serveur spécifié sera établie, et un pointeur vers la réponse http en carton sera renvoyé
- Effectuer des opérations sur les fichiers sous Linux Faites attention à la configuration des autorisations du serveur.

操作符 模式名称 意义
r 读模式 打开文件从头开始
r+ 读写模式 打开文件,从文件头开始读写
w 只写模式 打开文件,从文件头开始读写。如文件存在,清空文件内容,如不存在则穿件文件
w+ 读写模式 同上
x 谨慎写 如果文件存在则返回false
x+ 谨慎写 以读写方式打开文件,如果文件存在则返回false
a 追加 在文件末尾进行写操作
a+ 追加 在文件末尾进行读写操作

Opération d'écriture de fichier

A. Besoin d'appeler la fopen() fonction

1.`fwrite()`

描述 `int fwrite ( resource $handle , string $string [, int $length ] )`
$string   写入的字符  
$length   限制写入的长度
Copier après la connexion
Copier après la connexion

B. 🎜> fopen()Fermer le fichier

1. file_put_contents()
描述 file_put_contents(file,data,mode,context)
相当于一句话执行
fopen(),fwrite(),fclose()
Copier après la connexion
Copier après la connexion

Opération de lecture

fclose($fp)

如果成功返回true,反之false
Copier après la connexion
Copier après la connexion

Autres fonctions de fichier

$fp = fopen('./test.php','a')//以只读方式打开
flock($fp,LOCK_SH);//读操作锁定
while(!feof($fp))
{
    $order = fgets($fp);
    echo $order
}
fclose($fp)//关闭文件
# feof($fp) //检测文件是否读取到文件结束标志
//文件读写的几种操作
/*读取一行内的文字*/
# fgets($fp)  //获取文件一行字符
# (更加安全的操作,过滤了php和html标签)fgetss($fp,10,&#39;<a>&#39;)//三个参数 1.文件资源 2.限制每次获取的长度(如为0则不限制长度) 3.允许通过的标签
# fgetcsv($fp,0,"/t") 以"/t"为分隔符,分割我数组
/*读取整个文件*/
# (不需要fopen()操作) readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] )  //返回文件字符长度,!!!并且直接把内容输出到浏览器上
# fpassthru( resource $handle )  //返回boolean值
# file ( string $filename [, int $flags = 0 [, resource $context ]] )//把整个文件读入一个数组中,对每一行作为一个元素保存
/*读取一个字符*/
# fgetc()
/*读取任意长度字符*/
# fread($fp,$legth)
Copier après la connexion
Copier après la connexion

Verrouillage de fichier

file_exists("路径");   //文件是否存在filesize("路径"); //文件大小unlink;     //删除文件
Copier après la connexion
Fonction : ` fclock( $fp,'operation value');//Open lock

Bien que ce soit une chose très basique, j'ai honte de ne pas en savoir grand-chose. J'en ai donc profité pour revoir les

操作值意义
LOCK_SH读操作锁定,可以共享,其他人可以读该文件
LOCK_EX写操作锁定,互斥锁
LOCK_UN释放已有的锁
LOCK_NB防止在请求枷锁时发生柱塞
étapes d'écriture d'un fichier

Ouvrir ce fichier. Si le fichier n'existe pas, créez-le.
  1. Créer un verrou de fichier pour empêcher la concurrence
  2. Écrire ces données dans ce fichier
  3. Libérer verrouiller et fermer le handle du fichier
  4. Étapes de lecture du fichier

Ouvrez ce fichier, s'il ne peut pas être ouvert, quittez
  1. Lire les données du fichier
  2. Fermer ce fichier
  3. Opération d'ouverture de fichier

Renvoie false si l'ouverture échoue et renvoie l'objet ressource si l'ouverture est réussie. fopen($filename,$mode,$include_path,$context)

注意:
- 当文件的前缀是ftp://即文件服务器时 该函数将会建立一个连接到指定服务器的被动模式。并返回一个指向文件开始位置的指针
- 当文件前缀是http://时,会建立一个到指定服务器的http连接,返回一个纸箱http响应的指针
- 在Linux时执行文件操作要注意服务器的权限配置。

操作符模式名称意义
r读模式打开文件从头开始
r+读写模式打开文件,从文件头开始读写
w只写模式打开文件,从文件头开始读写。如文件存在,清空文件内容,如不存在则穿件文件
w+读写模式同上
x谨慎写如果文件存在则返回false
x+谨慎写以读写方式打开文件,如果文件存在则返回false
a追加在文件末尾进行写操作
a+追加在文件末尾进行读写操作

写文件操作

A. 需要调用 fopen()函数

1.`fwrite()`

描述 `int fwrite ( resource $handle , string $string [, int $length ] )`
$string   写入的字符  
$length   限制写入的长度
Copier après la connexion
Copier après la connexion

B . 不需要调用fopen()函数

1. file_put_contents()
描述 file_put_contents(file,data,mode,context)
相当于一句话执行
fopen(),fwrite(),fclose()
Copier après la connexion
Copier après la connexion

关闭文件

fclose($fp)

如果成功返回true,反之false
Copier après la connexion
Copier après la connexion

读操作

$fp = fopen(&#39;./test.php&#39;,&#39;a&#39;)//以只读方式打开
flock($fp,LOCK_SH);//读操作锁定
while(!feof($fp))
{
    $order = fgets($fp);
    echo $order
}
fclose($fp)//关闭文件
# feof($fp) //检测文件是否读取到文件结束标志
//文件读写的几种操作
/*读取一行内的文字*/
# fgets($fp)  //获取文件一行字符
# (更加安全的操作,过滤了php和html标签)fgetss($fp,10,&#39;<a>&#39;)//三个参数 1.文件资源 2.限制每次获取的长度(如为0则不限制长度) 3.允许通过的标签
# fgetcsv($fp,0,"/t") 以"/t"为分隔符,分割我数组
/*读取整个文件*/
# (不需要fopen()操作) readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] )  //返回文件字符长度,!!!并且直接把内容输出到浏览器上
# fpassthru( resource $handle )  //返回boolean值
# file ( string $filename [, int $flags = 0 [, resource $context ]] )//把整个文件读入一个数组中,对每一行作为一个元素保存
/*读取一个字符*/
# fgetc()
/*读取任意长度字符*/
# fread($fp,$legth)
Copier après la connexion
Copier après la connexion

其他文件函数

file_exists("路径");   //文件是否存在filesize("路径"); //文件大小unlink;     //删除文件
Copier après la connexion

文件锁

函数:`fclock($fp,’操作值’);//开启锁

操作值 意义
LOCK_SH 读操作锁定,可以共享,其他人可以读该文件
LOCK_EX 写操作锁定,互斥锁
LOCK_UN 释放已有的锁
LOCK_NB 防止在请求枷锁时发生柱塞
相关推荐:

php的命名空间和自动加载


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal