Синтаксис, использование и значения параметров (с их вариантами использования)

PHP или Hypertext Processor — это интуитивно понятный язык сценариев на стороне сервера. Как и все языки сценариев, PHP позволяет разработчикам обрабатывать данные, возвращаемые веб-браузером, и встраивать логику в процесс создания веб-страницы. Он также имеет несколько расширений, упрощающих извлечение данных для отображения на веб-странице, взаимодействие с базами данных и сохранение входной информации в базу данных. PHP включает в себя интерпретатор и язык сценариев. Сценарии встраиваются в HTML-документы, обслуживаемые веб-сервером. Интерпретатор действует как модуль, который интегрируется в веб-сервер, преобразуя сценарии в команды, выполняемые компьютером, для достижения необходимых результатов, определенных веб-разработчиком.

PHP предлагает ряд функций, облегчающих работу с различными типами данных. В этой статье мы собираемся изучить strpos в PHP.

Что такое strpos в PHP?

strpos в PHP — это встроенная функция. Его использование состоит в том, чтобы найти первое вхождение подстроки в строку или строку внутри другой строки. Функция возвращает целочисленное значение, которое является индексом первого вхождения строки. Символы верхнего и нижнего регистра обрабатываются по-разному, поскольку функция чувствительна к регистру.

Например, если вы хотите найти позицию «php» в строке «strpos in php», используйте следующее:

Использование strpos

Как упоминалось выше, функция функции strpos состоит в том, чтобы найти первое вхождение строки внутри какой-либо другой строки. Интересно отметить, что функция является двоично-безопасной.

Другими словами, strpos в PHP используется для поиска числового индекса появления иглы в строке стога сена. Давайте посмотрим на синтаксис функции.

Результат равен 7, так как первый символ в строке «strpos in PHP» — это строчная буква «i» в индексе 7. 

Примечание: PHP считает, что первый символ строки имеет индекс 0, что означает, что найденный ‘i’ strpos() является восьмым символом.

Как показано в первом примере, в качестве параметра можно указать и целое слово. strpos в PHP возвращает первое вхождение этого слова в строку, т. е. индекс первой буквы совпадающего слова. Однако давайте посмотрим, что произойдет, если подстрока не будет найдена в строке с помощью этого скрипта: 

Когда мы пытаемся выполнить этот скрипт, выводится «Ошибка», несмотря на то, что «Это» явно присутствует в данной строке. Это не проблема чувствительности к регистру. Затем?

«Это» — это первое слово в строке, что означает, что strpos в PHP вернет индекс 0. PHP считает 0 ложным, что означает, что он не может отличить найденную подстроку по индексу 0 от ненайденной подстроки.

Эту проблему можно решить с помощью оператора ‘===’ под названием ‘идентично’. Если search_string имеет значение false, оно должно быть равно и иметь тот же тип, что и логическое значение false. Вместо использования == в PHP, если мы используем ===, тогда PHP проверит значение 0 и false и обнаружит, что это не совпадение, потому что последнее является логическим значением, а первое — целым числом.

Исправленная версия:

Теперь попробуем найти «i» в этой строке с помощью этого скрипта:

 

Здесь strpos в php соответствует первому попавшемуся «i», т. е. в «This». Однако «i» также присутствует в «in», поэтому, если мы хотим получить его индекс, мы можем указать, где начать поиск.Это можно сделать следующим образом:

Результатом является индекс «i» из «is».

Значения параметров (с их вариантами использования)

У strpos в php есть три параметра, один из которых необязателен, а два обязательны. Они следующие:

  • original_string (обязательно) — этот параметр включает исходную строку, в которой нам нужно искать подстроку.
  • search_string (также требуется) — этот параметр представляет собой подстроку, которую нам нужно искать в исходной строке.
  • start_position (необязательно) — это позиция исходной строки, с которой функция начинает поиск исходной строки.