Maison >développement back-end >tutoriel php >Explication détaillée des exemples de comparaison d'efficacité de trois types de connexions de chaînes en PHP

Explication détaillée des exemples de comparaison d'efficacité de trois types de connexions de chaînes en PHP

伊谢尔伦
伊谢尔伦original
2017-06-27 13:23:321412parcourir

Il existe environ trois types de Connexions de chaîne en PHP :

1 Utilisez directement pour vous connecter.

2. Utilisez .= pour vous connecter.

3. Poussez d'abord dans le tableau, puis connectez-vous via la fonction join.

L'efficacité de ces trois méthodes est testée ci-dessous :

Le code de la première méthode est le suivant :

<?php   
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     $result=$result.$temp;
   }
   echo get_tm()-$start;
   
?>

Exécuter 4 fois, hors le premier temps d'exécution , les trois fois sont :

22.165272951126
22.003527164459
22.15947508812

Le deuxième code de méthode est le suivant :

<?php     
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     $result.=$temp;
   }
   echo get_tm()-$start;
   
?>

Exécuter 4 fois, sauf le premier Les trois temps d'exécution sont :

3.1967310905457
3.1296961307526
3.0872850418091

Le troisième code de méthode est le suivant :

<?php      
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
   
   $temp="test";
   $result="";
   $arr=array();
   define("num",100000);
   $start=get_tm();
  
   for($i=0;$i<num;$i++)
   {
     array_push($arr, $temp);
   }
   $result=join($arr);
   echo get_tm()-$start;
   
?>

Run 4 fois, À l'exclusion de la première durée d'exécution, les trois fois sont :

3.3184430599213
3.2759411334991
3.2663381099701

Comme le montre ce qui précède, la connexion par chaîne directement via . inefficace.

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