Maison  >  Article  >  développement back-end  >  Quatre façons courantes pour PHP de lire des fichiers texte et la signification des paramètres inhabituels dans str_replace

Quatre façons courantes pour PHP de lire des fichiers texte et la signification des paramètres inhabituels dans str_replace

不言
不言original
2018-04-20 12:40:031840parcourir

Cet article présente principalement en détail les quatre méthodes couramment utilisées pour lire les fichiers texte en PHP et la signification des paramètres inhabituels dans str_replace. Il a une certaine valeur de référence. Les amis intéressés peuvent s'y référer

.

Cela peut paraître simple, mais c'est probablement parce que vous n'en savez pas assez. Bien sûr, vous ne trouverez pas cela compliqué si vous en savez plus, mais vous en savez plus que les autres. Tout comme notre file_get_contents couramment utilisé, nous l'utilisons souvent pour obtenir le contenu d'une URL, mais en fait, il peut également être utilisé pour effectuer des demandes de publication, apporter des informations d'en-tête, définir des délais d'attente et même appeler FTP, spécifier un proxy, etc. Même comme une simple fonction d'écho, si vous n'en savez pas plus, vous ne savez peut-être pas que vous pouvez écrire plusieurs variables directement après l'écho, utilisez simplement des virgules pour les séparer.

Aujourd'hui, je suis tombé par hasard sur une méthode de fichier dans le manuel. Pour être honnête, je n'ai jamais utilisé cette méthode auparavant. Vous pouvez lire directement le contenu d'un fichier texte dans un tableau ligne par ligne, ce qui s'avère très pratique dans certaines situations. Ensuite, j'ai lu davantage sur la façon d'utiliser les fichiers en PHP, puis j'ai utilisé str_replace, une méthode fréquemment utilisée. Lors de l'utilisation de str_replace, je me demandais si je pouvais contrôler le remplacement des boucles via des paramètres.

Par exemple, une chaîne : hello world, je veux remplacer lo par ol Après le remplacement, elle devient hello world, et après l'avoir remplacée une fois, elle a lo dans sa structure. le contrôler ? Le laisser être remplacé à nouveau. Cependant, j'ai trouvé qu'un tel paramètre n'existait pas. str_replace lui-même a un quatrième paramètre, mais il s'agit d'une donnée de retour, renvoyant le nombre total de remplacements pendant la période de remplacement. Le jeu d'aujourd'hui est organisé comme suit :

str_replace est organisé comme suit :
1:str_replace : Le dernier paramètre renverra une donnée statistique sur le nombre de fois qu'il a été remplacé au total .
2:str_replace : Bouclera et remplacera
3: str_replace : Vous pouvez directement exploiter et remplacer le tableau, pas besoin de boucler et remplacer individuellement
4 : Un très beau remplacement : utiliser un tableau pour contenir ce que vous voulez remplacer et ce que vous voulez remplacer

//1:str_replace:最后一个参数会返回总共替换了多少次的一个统计数据.
$char = str_replace(array('is','s'),'_','this is a replace test.', $count);
echo $char.&#39;共替换&#39;.$count.&#39;次<br>&#39;;

//2:str_replace:会循环替换
$char = str_replace(array(&#39;t&#39;,&#39;k&#39;),array(&#39;k&#39;,&#39;_&#39;),&#39;this is a replace test.&#39;, $count);
echo $char.&#39;共替换&#39;.$count.&#39;次<br>&#39;;

//3:str_replace:可以直接对数组进行操作替换,不需要循环单独替换
$char_arr = array(&#39;hello&#39;,&#39;world&#39;);
$char_arr = str_replace(array(&#39;o&#39;,&#39;k&#39;),array(&#39;k&#39;,&#39;_&#39;),$char_arr,$count);
print_r($char_arr);
echo &#39;共替换&#39;.$count.&#39;次<br><br>&#39;;

//4:一个非常漂亮的替换:使用一个数组
$replaceThis = Array(
    &#39;old word&#39; => &#39;new word&#39;,
    &#39;was&#39; => &#39;it&#39;,
    &#39;past&#39; => &#39;future&#39;,
);
$originalText = "every old word was a thing of the past...";
$replacedText = str_replace(array_keys($replaceThi


Environ 4 façons de lire des fichiers en PHP :
1, utilisez fopen, fread pour lire le fichier en une seule fois ou spécifier la taille Lire plusieurs fois.
2, ouvrez avec fopen, lisez ligne par ligne via fgets, fgets ne spécifie pas le paramètre de longueur et la valeur par défaut est de lire 1k.
3. Utilisez la fonction file pour lire le contenu dans un tableau à la fois (séparé par une ligne)
4. La façon de lire le contenu du fichier est file_get_contents<.>

$file_path = "error.log";
if(!file_exists($file_path)) exit(&#39;file not exits.&#39;);

//1,使用fopen,fread一次读取文件,也可通过指定大小多次读取。
$fp = fopen($file_path, "r");
$str = trim(fread($fp, filesize($file_path)));
echo str_replace(array("rn"), "<br>", $str);
echo "<br>".str_repeat(&#39;-&#39;, 50)."<br>";

//2,使用fopen打开,通过fgets逐行读取,fgets不指定length参数,默认是读取1k。
$fp = fopen($file_path,"r");
$str ="";
while(!feof($fp)){
    $str .= fgets($fp);
}
$str = str_replace("rn","<br>",$str);
echo $str;

//3,使用file函数一次性将内容读入数组(按行分开)
$file = file($file_path);
echo implode(&#39;<br>&#39;, $file);
echo "<br>".str_repeat(&#39;-&#39;, 50)."<br>";

//4,读取文件内容的方式file_get_contents
$str=trim(file_get_contents($file_path));
echo str_replace(array("rn"), "<br>", $str);
echo "<br>".str_repeat(&#39;-&#39;, 50)."<br>";
Recommandations associées :

Code de méthode PHP pour lire des fichiers

Opérations de base pour lire des données avec 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!

Déclaration:
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