Lecture d'une taille de fichier 1G via PHP

jacklove
Libérer: 2023-03-30 19:06:02
original
1942 Les gens l'ont consulté

La lecture de fichiers est très importante en PHP. La lecture de fichiers avec une mémoire plus importante nécessite certaines compétences. Cet article expliquera les compétences.

Puisque la fonction de fichier lit tout le contenu dans la mémoire en même temps et que PHP a pour but d'empêcher certains programmes mal écrits d'occuper trop de mémoire et de provoquer une mémoire système insuffisante et de provoquer un crash du serveur, il vous faut donc quelques bonnes idées.

01 思路1:利用php执行linux的命令,将一个文件内容(a.log)复制到另一个文件中(b.log)
cat a.log >>b.log
02 思路2:用php执行linux的head命令,获取内容,一行行写入另一个文件(b.log)中。
cat a.log|wc -l
sed -n '1 p' a.log
fileputcontents('b.log’, $content, FILE_APPEND);
Copier après la connexion
//02.读取1G的文件内容
  public function testGetLarge()
  {/*{{{*/
 #01. 方法1 直接cat后重定向
  #if('useCat' == 'useCat')
 if(0 && 'useCat' == 'useCat')
 {
 `cat a.log>>b.log`;
  }
#02. 使用flie_put_contents ,一行一行读取并追加写入
 if('useFilePutContents' == 'useFilePutContents')
 {/*{{{*/
$lineNum = `cat a.log|wc -l`;
for($i=1; $i<= $lineNum; $i++)
 {
   $content = `sed -n &#39;$i p&#39; a.log`;
   //文件追加
   file_put_contents(&#39;b.log&#39;, $content, FILE_APPEND);
   }
   }/*}}}*/
Copier après la connexion

Cet article explique en détail comment lire une taille de fichier de 1 Go via PHP Pour plus de connaissances connexes, veuillez faire attention au site Web chinois de php.

Recommandations associées :

Expliquez le code de la fonction d'initialisation de la classe PHP

Expliquez le code PHP orienté objet et lié à l'héritage PHP

Expliquez le code lié à la sérialisation et à la désérialisation orientées objet 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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!