Вот код: $word[$i]=str_replace("*", ", ", $word[$i]); $part=explode("=", $word[$i]); $part1=str_replace("|", " ", $part[0]); $part2=str_replace("|", " ", $part[1]); При его выполнении, если в $word содержится выражения типа: [674237234092340234-42348437436::?(*)(_):;№! " " %)(_)]{^%#$@##$^^&*(&~@GVY()(*)(IOU} То возникает ошибка PHP Notice: Undefined offset: 1 in... которая указывает на строку: $part2=str_replace("|", " ", $part[1]); Собственно, как исправить ошибку? UPD Если в $word содержится: "В данной строке ($word) отсутствует знак", то ошибки не возникает, хотя там нет знака =
Ответ
В данной строке ($word) отсутствует знак =, поэтому после explode в массиве $part у вас есть только значение с 0 ключом и выражением $part2=str_replace("|", " ", $part[1]);
Вы пытаетесь обратиться к элементу с индексом 1, которого не существует, вот и ошибка.
Комментариев нет:
Отправить комментарий