Оглавление

Разбивка строки

Функция substr позволяет извлечь часть строки. Для этого нужно задать точку отсчета и необходимую длину. В следующем примере показано, как это работает:

$phrase = "I love PHP"; 
echo  substr($phrase, 4, 5);


Функция substr возвращает часть переменной $phrase начиная с четвертой позиции, длиной в пять символов.
Если не указать длину, возвращается подстрока от заданной позиции до конца строки. Следующий пример выводит love PHP для переменной $phrase:

echo substr($phrase, 2);


Если стартовая позиция — отрицательное число, то функция substr начинает отсчет с конца строки. В примере ниже на экран выводится три последних символа строки, в данном случае — PHP:

echo substr($phrase, -3);


Для   того   чтобы   узнать   длину   строки,   используется функция strlen:

echo strlen($phrase);


Чтобы найти позицию символа или строки в другой строке, используется функция strpos. Первый аргумент содержит "где искать", а второй "что искать".

 

В следующем примере выводится позиция символа @ в электронном адресе:

$email = "support@xoops.ws"; 
echo strpos($email, "@");

 

 

Позиция в строке
Нужно помнить, что позиция символа в строке отсчитывается с левого края и начинается с нуля. Позиция 1 соответствует второму символу в строке. Когда strpos находит искомую последовательность в начале строки, на выходе получим ноль. Но когда искомой комбинации не обнаружено, — на выходе получим
FALSE.
Чтобы определить эту разницу, нужно проверять тип. Например, условие strpos ($а, $b) === 0 будет истинным только в том случае, когда $b содержится в , начиная с нулевой позиции.

 

Функция strstr извлекает часть строки от совпадающей позиции и до конца строки. Эта функция создана для удобства, чтобы не использовать комбинацию strpos и substr. Два следующих выражения полностью эквивалентны:

$domain = strstr($email, "@");
$domain = strstr($email, strpos($email, "@"));
Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити