php Как понять где именно в строке ошибка (в каком символе, когда номер строки известен)

Если в строке находится достаточно сложное выражение, то можно всегда разбить его на несколько строк, чтобы уточнить у интерпретатора что именно не так.

Пример разбиения одной строки на несколько

Рассмотрим пример:

<?php

$s = [];
$a = $s;
$s[1] = '123' . $a;

- для этого кода мы получим сообщение:

Notice: Array to string conversion in [...][...] on line 5

- написано, что происходит некорректная попытка привести массив к строковому типу в 5-ой строке программы, но на первый взгляд на строку:

$s[1] = '123' . $a;

можно подумать, что проблема в части:

$s[1]

-- ведь именно там сразу заметен массив. На самом деле это не так, разобьём проблемную строку на максиму (больше нет смысла) - на три строки:

<?php

$s = [];
$a = $s;
$s[1] = 
    '123' 
    . $a;

И тут мы уже увидим более точное указание на другую строку (хотя текст ошибки кроме номера строки, ни сколько не изменился):

Notice: Array to string conversion in [...][...] on line 7

Но теперь в 7 строке находится только переменная $a - значит проблема была вовсе не в той части, что слева от оператора присваивания, а именно $a является массивом следует исправлять строку, где $a инициализируется ,а именно:

$a = $s;

Данный способ (особенно для сложных выражений) позволяет не начинать сразу с детальной отладки, а облегчить дело уточнением места ошибки.

Оформление кода и совсем длинные строки

В хорошо оформленном коде не должно быть сильно длинных строк - считается, что 80 символов обычно достаточно - это где-то треть современных широких мониторов (хотя зависит конечно от размеров шрифта).
То же самое относится и к комментариям.

Key Words for FKN + antitotal forum (CS VSU):