Решение, автором проекта, задачи Анаграммы

Доброго времени суток!
Не могли бы вы объяснить эту часть кода?

$lineSymbols1 = [];
$lenght = strlen($line1);
for ($i = 0; $i < $lenght; $i++) {
    if (isset($lineSymbols1[$line1[$i]])) {
        $lineSymbols1[$line1[$i]]++;
    } else {
        $lineSymbols1[$line1[$i]] = 1;

Именно непонятна эта запись ($lineSymbols1[$line1[$i]]), я так понимаю функция isset проверяет существование вложенных элементов массива, [$line1[$i]] здесь $line1 это ключ, а $i его значение?!
Перед этим массив объявлен пустым!

Harvester 08.12.2020 в 19:19

Ответы (3)


isset проверяет что в массиве $lineSymbols1 есть ключ с названием, равным $line1[$i]. То есть если в $line1 лежит строка abc, $i = 1, в результате выполнения выражения $line1[$i] получится 'b'.
isset будет проверять что в массиве lineSymbols1 есть ключ 'b'.

ivashkevich 13.12.2020 в 07:21

Какой там разделитель слов? Что-то не могу понять...

devdev 10.09.2021 в 02:41

Как интересно! Сложная работа у программистов.

[email protected] 19.10.2021 в 20:04

Сложная работа, но интересная наверно. Меня интересует создание сайтов вывод в ТОП гугла, и да - это дополнительные траты. Но в случае, если за дело берутся профи, окупаемость такого вложения почти 100%. В Digital агентство Bright хороший подход к работе, уже многим помогли. Просмотрев их портфолио я решил отказаться от самодеятельности и довериться в руки этой молодой команды.

[email protected] 20.10.2021 в 12:49

Добавить новый ответ