Почему этот код выдает "синтаксическая ошибка, неожиданная '='"? - PullRequest
0 голосов
/ 14 сентября 2010
$text . = '1 paragraph';
$text . = '2 paragraph';
$text . = '3 paragraph';
echo $text;

Этот код выдает ошибку syntax error, unexpected '='.

В чем проблема?

Ответы [ 5 ]

7 голосов
/ 14 сентября 2010

Я думаю, что вы хотите:

$text = '1 paragraph';
$text .= '2 paragraph';
$text .= '3 paragraph';
echo $text;

Обратите внимание, что первая строка не использует .=, а просто использует =

4 голосов
/ 14 сентября 2010

Если вы все равно собираетесь выводить все это, тогда зачем вообще объединять? Просто повтори это:

echo '1 paragraph', 
     '2 paragraph',
     '3 paragraph';
4 голосов
/ 14 сентября 2010

Пространство между точкой и равным?.= вместо . =

2 голосов
/ 14 сентября 2010

Другие уже указали на ошибку: пробел между . и =.

Это ошибка синтаксиса / разбора. Когда PHP видит ., за которым следует пробел, он принимает . в качестве отдельного токена, который используется для объединения строк. Теперь он ожидает строку или переменную после него. Но когда он видит =, он выдает ошибку разбора, поскольку он не соответствует грамматике PHP.

1 голос
/ 14 сентября 2010

Также может эхом, как это

echo '1 paragraph'.'2 paragraph'.'3 paragraph';

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...