Heim >Backend-Entwicklung >PHP-Tutorial >Um zwei Zeichenfolgen in PHP auf Gleichheit zu vergleichen, welche ist effizienter, == oder strcmp()?

Um zwei Zeichenfolgen in PHP auf Gleichheit zu vergleichen, welche ist effizienter, == oder strcmp()?

WBOY
WBOYOriginal
2016-08-18 09:16:312332Durchsuche

Vergleichen Sie, ob zwei Zeichenfolgen in PHP gleich sind. Welche ist effizienter, == oder strcmp()?

Antwortinhalt:

Vergleichen Sie, ob zwei Zeichenfolgen in PHP gleich sind. Welche ist effizienter, == oder strcmp()?

Ich denke, du musst noch mehr alleine üben.

<code><?php
$time1 = microtime(true);
$a = $b = 'hello,world!';
$i = $j = 100000000;
while($i>0){
    $i--;
    if($a==$b) ;
}
$time2 = microtime(true);
while($j>0){
    $j--;
    if(strcmp($a,$b));
}
$time3 = microtime(true);

echo ($time2 - $time1)."\n";
echo ($time3 - $time2);

//result
//$ php demo.php
//1.9449820518494
//7.9897949695587
</code>

Es ist definitiv == effizienter, da der Operator Speicher spart als Funktionsaufrufe.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn