Parse error: syntax error, unexpected ';' in Z:\home\ip.ru\www\ip.php on line 39

После запуска кода в браузере пишется следущее: Parse error: syntax error, unexpected ';' in Z:\home\ip.ru\www\ip.php on line 39. В чем ошибка если там стоит ";", а все скобки закрыты? Вот код: https://github.com/1yaroslav/ip.php/blob/main/ip.php . Спасибо за помощь!


Ответы (1 шт):

Автор решения: Егор Банин

"unexpected ';'" переводится как "неожиданная ';'". То есть парсер ожидает чего-то другое, а не точку с запятой. Если посчитать скобки в этой строке, то становится понятно чего он ожидает.

Чтобы не делать таких ошибок можно иначе форматировать код или использовать вспомогательные переменные:

echo (
    str_replace(
        ":", ":      ", fgets($sock, 128)
    ) . "<br>";
// <-- сразу видно, что скобку не закрыли
$data = fgets ($sock, 128);
$msg = str_replace(":", ":&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;", $data);
echo ($msg . "<br>"; // <-- тоже всё понятно
→ Ссылка