Maison  >  Article  >  développement back-end  >  Apprenez à utiliser le rendement en php en une minute (partager)

Apprenez à utiliser le rendement en php en une minute (partager)

慕斯
慕斯avant
2021-06-23 14:08:407918parcourir

Je pense que la plupart des gens ne savent toujours pas comment utiliser le rendement en php, ou ne savent même pas ce qu'est le rendement, donc cet article Je suis ici pour vous parler de quelques problèmes concernant le rendement et comment utiliser le rendement pour résoudre les problèmes que nous rencontrons en Php.

Problèmes résolus par rendement

Résolvez le goulot d'étranglement de la mémoire en cours d'exécution. Les variables du programme PHP sont stockées dans la mémoire, la mémoire sera insuffisante et ce qui suit apparaîtra. :

Fatal Error: Allowed memory size of xxxxxx bytes

Nous allons donc définir le paramètre de mémoire en cours d'exécution maximum de PHP : ini_set('memory_limit', '200M')

Mais lorsque nous lisons un fichier aussi gros que 5 Go, nous ne pourrons peut-être pas gérer la mémoire en cours d'exécution , nous choisirons donc rendement

Première connaissance de Yield

Run :

<?phpfunction createRange($number){
    $data = [];
    for($i=0;$i<$number;$i++){
        $data[] = time();
    }
    return $data;}$data =createRange(10);foreach($data as $value){
    sleep(1);//这里停顿1秒,我们后续有用
    echo $value.PHP_EOL;}

Apprenez à utiliser le rendement en php en une minute (partager)

L'heure est la même. Si le rendement est utilisé :

<?phpfunction createRange($number){
    for($i=0;$i<$number;$i++){
        yield time();
    }}$data =createRange(10);foreach($data as $value){
    sleep(1);//这里停顿1秒,我们后续有用
    echo $value.PHP_EOL;}

Apprenez à utiliser le rendement en php en une minute (partager)
L'intervalle de temps est d'une seconde, donc à travers l'exemple du rendement, on sait que ce n'est pas comme le premier exemple de stocker le contenu de la boucle for en mémoire, mais consommée une par une.

Exemple de lecture d'un fichier

Créez un fichier txt et écrivez :

第1行
第2行
第3行
第4行
第5行
第6行
第7行
第8行
rrree

Utilisez php pour lire le fichier ligne par ligne
Apprenez à utiliser le rendement en php en une minute (partager)

Apprentissage recommandé : "Tutoriel vidéo 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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer