Разница между периодом и запятой при конкатенации с эхом и возвратом? - программирование

Разница между периодом и запятой при конкатенации с эхом и возвратом?

Я только что нашел, что это сработает:

echo $value , " contiue";

но это не так:

return $value , " contiue";

Пока "." Работает в обоих.

В чем разница между точкой и запятой здесь?

4b9b3361

Ответ 1

return позволяет только одно выражение. Но echo разрешает список выражений, в которых каждое выражение разделяется запятой. Но учтите, что поскольку echo не является функцией, а специальной конструкцией языка, перенос списка выражений в скобки является незаконным.

Ответ 2

Вы также должны заметить, что echo как конструкция быстрее с запятыми, чем с точками.

Так что, если вы присоединитесь к персонажу 4 миллиона раз, вот что вы получите:

echo $ str1, $ str2, $ str3;

Около 2,08 секунд

echo $ str1. $ str2. $ Str3;

Около 3,48 секунды

Как вы можете видеть выше, это занимает почти половину времени.

Это связано с тем, что PHP с точками сначала присоединяется к строке, а затем выводит их, а с запятыми просто выводит их один за другим.

Мы говорим о дробях, но все же.

Первоначальный источник

Ответ 3

. - это оператор конкатенации в PHP, для объединения двух строк. Запятая может использоваться для нескольких входов для эха.

Ответ 4

Dot (.) предназначен для конкатенации переменной или строки. Вот почему он работает, когда вы эхо, конкатенируя две строки, и работает, когда вы возвращаете конкатенацию строки в методе. Но запятая не конкатенация, и поэтому оператор return не работает.

echo - это языковая конструкция, которая может принимать несколько выражений, поэтому запятая работает:

void echo ( string $arg1  [, string $...  ] )

Используйте точку для конкатенации

Ответ 5

echo - это языковая конструкция (а не функция) и может принимать несколько аргументов, поэтому работает ,. использование запятой будет немного четным (но только некоторые наносекунды, о чем не о чем беспокоиться)

. - оператор конкатенации (клей) для строк

Ответ 6

echo на самом деле является функцией (не совсем, но пусть говорят, что это аргумент), которая принимает любое количество параметров и будет конкатенатировать их вместе.

Хотя return не является функцией, а скорее ключевым словом, которое сообщает функции о возврате значения и пытается интерпретировать , как своего рода оператор. Вы должны использовать . в качестве оператора конкатенации в случае, когда вы используете оператор return.