Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erklärung des Unterschieds zwischen der Verwendung von Kommas und Punkten für Echo in PHP

Detaillierte Erklärung des Unterschieds zwischen der Verwendung von Kommas und Punkten für Echo in PHP

*文
*文Original
2017-12-29 19:04:181851Durchsuche

In diesem Artikel werden mehrere spezifische Beispiele verwendet, um den Unterschied zwischen der Verwendung von Kommas und Punkten zum Verbinden von Echo in der PHP-Programmierung zu verstehen. Freunde in Not können darauf verweisen. Ich hoffe, dass es für alle hilfreich ist.

Es wird erwähnt, dass die Verwendung von Echo-Strings besser ist als die Verwendung von .connection. Reden wir nicht über die Gründe. Werfen wir einen Blick auf die folgenden zwei Sätze:

 <?php
 // 逗号比.更节省时间?
 echo &#39;1+5=&#39; . 1+5; 
 echo &#39;1+5=&#39; . 5+1;

Was ist das Ergebnis?

1+5=6?
1+5=6?
——————
6?
2?
——————
6.6?
6.6?
——————

Ich kann nur sagen, dass das Ergebnis von echo '5+1= 10 ist, also ist das Ergebnis 6 und 2.

Warum ist das so? Gibt es in PHP keine kommutative Eigenschaft in der chinesischen Addition? Es kann gesehen werden. Nur durch die Verwendung von Kommas können wir die erwarteten Ergebnisse erzielen.

echo &#39;1+5=&#39; , 5+1;  //输出 1+5=6 
echo &#39;1+5=&#39; , 1+5;  //输出 1+5=6
Warum funktioniert der Punkt dann nicht?


Wir fügen Klammern zum vorherigen hinzu.

echo (&#39;1+5&#39; . 5)+1; //输出2
Es beweist, dass PHP die Additionsberechnung zuerst von links nach rechts durchführt >

Das ist gut. Dann sollte es „1+55“ sein. Warum wird dann 2 ausgegeben? Derselbe wie bei der Zeichenfolge in PHP. Der Mechanismus zur Umwandlung in eine Zahl hängt damit zusammen. Schauen wir uns das folgende Beispiel an:

Aus dem obigen Beispiel können wir ersehen, dass eine Zeichenfolge zwangsweise in eine Zahl umgewandelt werden muss , PHP sucht nach diesem Zeichen. Wenn der Anfang eine Zahl ist, konvertieren Sie ihn. Wenn nicht, geben Sie 0 direkt zurück 55 gerade jetzt. Da diese Zeichenfolge 1+55 ist, sollte sie 1 sein. Addieren Sie dazu natürlich 2.

Um unsere Vermutung zu beweisen.


Das Ergebnis beweist, dass die Annahme richtig ist.

Warum tritt das obige Problem bei der Verwendung von Kommas nicht auf?

echo (int)&#39;abc1&#39;;  //输出0
echo (int)&#39;1abc&#39;; //输出1
echo (int)&#39;2abc&#39;; //输出2
echo (int)&#39;22abc&#39;; //输出22

Die Verwendung von Kommas bedeutet mehrere Parameter .


Das heißt, es handelt sich um Multiparameter. Mit anderen Worten:


durch Kommas getrennt entspricht N Parametern als Funktion.

echo &#39;5+1=&#39; . 1+5; //输出10
echo &#39;5+1=&#39; . 5+1; //输出6
echo &#39;1+5=&#39; . 1+5; //输出6
echo &#39;1+5=&#39; . 5+1; //输出2

In diesem Fall berechnet echo zuerst jeden Parameter und verbindet und gibt ihn dann aus. Wenn wir also Kommas verwenden, besteht das obige Problem nicht:)

php Echo-Handbuch


Der Grund, warum es schnell ist, kann leicht verstanden werden Weg für jetzt).

Aber die Spleißgeschwindigkeit ist langsamer als die Echogeschwindigkeit.

Wenn Sie es genau verstehen, sieht VLD wie unten gezeigt aus. Es ist ein Bild von Meister @tywei


Die Oberseite hat mehr CONCAT als die Unterseite, und die Unterseite hat mehr Echo als die Oberseite.

Verwandte Empfehlungen:
<?php
// Strings can either be passed inpidually as multiple arguments or
// concatenated together and passed as a single argument
echo &#39;This &#39;, &#39;string &#39;, &#39;was &#39;, &#39;made &#39;, &#39;with multiple parameters.&#39;, chr(10);
echo &#39;This &#39; . &#39;string &#39; . &#39;was &#39; . &#39;made &#39; . &#39;with concatenation.&#39; . "\n";



PHP-Syntax (Syntax)


Der Weg zum Erlernen des MVC-Frameworks in PHP wird durch

Detaillierte Erklärung der Verwendung von PHP-Namespaces erklärt

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung des Unterschieds zwischen der Verwendung von Kommas und Punkten für Echo in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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