Обработка строк | Руководство по PHP
Вернуться к: Строки
Для получения информации о более сложной обработке строк обратитесь к разделам о регулярных выражениях: POSIX-совместимых и Perl-совместимых.
- addcslashes — Экранирует cтроку слешами в стиле языка C
- addslashes — Экранирует строку с помощью слешей
- bin2hex — Преобразует бинарные данные в шестнадцатеричное представление
- chop — Псевдоним rtrim
- chr — Возвращает символ по его коду
- chunk_split — Разбивает строку на фрагменты
- convert_cyr_string — Преобразует строку из одной кириллической кодировки в другую
- convert_uudecode — Декодирует строку из формата uuencode в обычный вид
- convert_uuencode — Кодирует строку в формат uuencode
- count_chars — Возвращает информацию о символах, входящих в строку
- crc32 — Вычисляет полином CRC32 для строки
- crypt — Необратимое хэширование строки
- echo — Выводит одну или более строк
- explode — Разбивает строку с помощью разделителя
- fprintf — Записывает отформатированную строку в поток
- get_html_translation_table — Возвращает таблицу преобразований, используемую функциями htmlspecialchars и htmlentities
- hebrev — Преобразует текст на иврите из логической кодировки в визуальную
- hebrevc — Преобразует текст на иврите из логической кодировки в визуальную с преобразованием перевода строки
- hex2bin — Преобразует шестнадцатеричные данные в двоичные
- html_entity_decode — Преобразует все HTML-сущности в соответствующие символы
- htmlentities — Преобразует все возможные символы в соответствующие HTML-сущности
- htmlspecialchars_decode — Преобразует специальные HTML-сущности обратно в соответствующие символы
- htmlspecialchars — Преобразует специальные символы в HTML-сущности
- implode — Объединяет элементы массива в строку
- join — Псевдоним implode
- lcfirst — Преобразует первый символ строки в нижний регистр
- levenshtein — Вычисляет расстояние Левенштейна между двумя строками
- localeconv — Возвращает информацию о числовых форматах
- ltrim — Удаляет пробелы (или другие символы) из начала строки
- md5_file — Возвращает MD5-хэш файла
- md5 — Возвращает MD5-хэш строки
- metaphone — Возвращает ключ metaphone для строки
- money_format — Форматирует число как денежную величину
- nl_langinfo — Возвращает информацию о языке и локали
- nl2br — Вставляет HTML-код разрыва строки перед каждым переводом строки
- number_format — Форматирует число с разделением групп
- ord — Возвращает ASCII-код символа
- parse_str — Разбирает строку в переменные
- print — Выводит строку
- printf — Выводит отформатированную строку
- quoted_printable_decode — Преобразует строку, закодированную методом quoted-printable в 8-битовую строку
- quoted_printable_encode — Кодирует 8-битную строку в с помощью метода quoted-printable
- quotemeta — Экранирует специальные символы
- rtrim — Удаляет пробелы (или другие символы) из конца строки
- setlocale — Устанавливает настройки локали
- sha1_file — Возвращает SHA1-хэш файла
- sha1 — Возвращает SHA1-хэш строки
- similar_text — Вычисляет степень похожести двух строк
- soundex — Возвращает ключ soundex для строки
- sprintf — Возвращает отформатированную строку
- sscanf — Разбирает строку в соответствии с заданным форматом
- str_getcsv — Выполняет разбор CSV-строки в массив
- str_ireplace — Регистронезависимый вариант функции str_replace
- str_pad — Дополняет строку другой строкой до заданной длины
- str_repeat — Возвращает повторяющуюся строку
- str_replace — Заменяет все вхождения строки поиска на строку замены
- str_rot13 — Выполняет преобразование ROT13 над строкой
- str_shuffle — Переставляет символы в строке случайным образом
- str_split — Преобразует строку в массив
- str_word_count — Возвращает информацию о словах, входящих в строку
- strcasecmp — Бинарно-безопасное сравнение строк без учета регистра
- strchr — Псевдоним strstr
- strcmp — Бинарно-безопасное сравнение строк
- strcoll — Сравнение строк с учетом текущей локали
- strcspn — Возвращает длину участка в начале строки, не соответствующего маске
- strip_tags — Удаляет HTML и PHP-теги из строки
- stripcslashes — Удаляет экранирование символов, произведенное функцией addcslashes
- stripos — Возвращает позицию первого вхождения подстроки без учета регистра
- stripslashes — Удаляет экранирование символов
- stristr — Регистронезависимый вариант функции strstr
- strlen — Возвращает длину строки
- strnatcasecmp — Сравнение строк без учета регистра с использованием алгоритма «natural order»
- strnatcmp — Сравнение строк с использованием алгоритма «natural order»
- strncasecmp — Бинарно-безопасное сравнение первых n символов строк без учета регистра
- strncmp — Бинарно-безопасное сравнение первых n символов строк
- strpbrk — Ищет в строке любой символ из заданного набора
- strpos — Возвращает позицию первого вхождения подстроки
- strrchr — Находит последнее вхождение символа в строке
- strrev — Переворачивает строку задом наперед
- strripos — Возвращает позицию последнего вхождения подстроки без учета регистра
- strrpos — Возвращает позицию последнего вхождения подстроки в строке
- strspn — Возвращает длину участка в начале строки, полностью соответствующего маске
- strstr — Находит первое вхождение подстроки
- strtok — Разбивает строку на токены
- strtolower — Преобразует строку в нижний регистр
- strtoupper — Преобразует строку в верхний регистр
- strtr — Преобразует заданные символы или заменяет подстроки
- substr_compare — Бинарно-безопасное сравнение 2 строк со смещением, с учетом или без учета регистра
- substr_count — Возвращает число вхождений подстроки
- substr_replace — Заменяет часть строки
- substr — Возвращает подстроку
- trim — Удаляет пробелы (или другие символы) из начала и конца строки
- ucfirst — Преобразует первый символ строки в верхний регистр
- ucwords — Преобразует в верхний регистр первый символ каждого слова в строке
- vfprintf — Записывает отформатированную строку в поток
- vprintf — Выводит отформатированную строку
- vsprintf — Возвращает отформатированную строку
- wordwrap — Переносит строку по указанному количеству символов
Вернуться к: Строки
Функции для работы со строками — PHP functions documentation
mb_lcfirst
Преобразует первый символ в нижний регистр.
<?php mb_lcfirst($data, $charset = 'UTF-8') { /** .. */ }
Параметры функции
- $data
Тип данных: array|string
Описание: Обрабатываемая строка или массив
- $charset
Тип данных: string|string
Описание: Кодировка строки
Значение по умолчанию: UTF-8
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой. array, если параметр $data является массивом.
Warning
Функция не доступна если не подключен расширение mbstring.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
mb_ucfirst
Преобразует первый символ в верхний регистр.
<?php mb_ucfirst($data, $charset = 'UTF-8') { /** .. */ }
Параметры функции
- $data
Тип данных: array|string
Описание: Обрабатываемая строка или массив
- $charset
Тип данных: string
Описание: Кодировка строки
Значение по умолчанию: UTF-8
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой.
Warning
Функция не доступна если не подключен расширение mbstring.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
one_space
Заменить множественную последовательность пробелов и табуляций на 1 пробел.
<?php one_space($data) { /** .. */ }
Параметры функции
- $data
Тип данных: array|string
Описание: Обрабатываемая строка или массив
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
one_new_line
Заменить множественную последовательность перевода строки на 1 перевод.
<?php one_new_line($data) { /** .. */ }
Параметры функции
- $data
Тип данных: array|string
Описание: Обрабатываемая строка или массив
Note
Эта функция возвращает тип данных string
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
full_one_space
Заменить множественную последовательность пробелов, табуляций и переводов строк на 1 пробел.
<?php full_one_space($data) { /** .. */ }
Параметры функции
- $data
Тип данных: array|string
Описание: Обрабатываемая строка или массив
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой. array, если параметр $data является массивом.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
e_decode
Декодирование HTML сущностей в строке.
<?php e_decode($data, $charset = 'UTF-8') { /** .. */ }
Параметры функции
- $data
Тип данных: array|string
Описание: Обрабатываемая строка или массив
- $charset
Тип данных: string
Описание: Кодировка строки
Значение по умолчанию: UTF-8
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой. array, если параметр $data является массивом.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
e
Преобразование всех специальных символов строки в HTML сущности.
<?php e($data, $charset = 'UTF-8') { /** .. */ }
Параметры функции
- $data
Тип данных: array|string
Описание: Обрабатываемая строка или массив
- $charset
Тип данных: string
Описание: Кодировка строки
Значение по умолчанию: UTF-8
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой. array, если параметр $data является массивом.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
camel_case
Преобразовывание строки в CamelCase формат.
<?php camel_case($str, $first = false) { /** .. */ }
Параметры функции
- $str
Тип данных: array|string
Описание: Обрабатываемая строка или массив
- $first
Тип данных: bool
Описание: Необходимо ли первый символ перевести в верхний регистр
Значение по умолчанию: false
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой. array, если параметр $data является массивом.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
underscore
Преобразовывание строки в underscore формат.
<?php underscore($str) { /** .. */ }
Параметры функции
- $str
Тип данных: array|string
Описание: Обрабатываемая строка или массив
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой. array, если параметр $data является массивом.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
normalize_name
Нормализация имен.
Эта функция преобразовывает в верхний регистр первый символ каждого слова.
В качестве разделителя слов используются символы ” “, “-“, “’”.
<?php normalize_name($str) { /** .. */ }
Параметры функции
- $str
Тип данных: array|string
Описание: Обрабатываемая строка или массив
Note
Эта функция возвращает тип данных string, если первый параметр функции $data является строкой. array, если параметр $data является массивом.
See also
- for_all
- Эта функция корректно обрабатывает как строку, так и значения многомерных массивов
mb_str_replace
Replace all occurrences of the search string with the replacement string.
<?php mb_str_replace($search, $replace, $subject, &$count = 0) { /** .. */ }
Параметры функции
- $search
Тип данных: string
Описание: Оискомая строка
- $replace
Тип данных: string
Описание: Строка на которую необходимо заменить искомое
- $subject
Тип данных: string
Описание: Строка в которой производится замена
- &$count
Тип данных: string
Описание: Число произведенных замен в строке
Значение по умолчанию: 0
Note
Эта функция возвращает тип данных string
mb_trim_word
Обрезание текста по длине с поиском последнего полностью вмещающегося слова и удалением лишних крайних знаков пунктуации.
<?php mb_trim_word($html, $len, $encoding = 'UTF-8') { /** .. */ }
Параметры функции
- $html
Тип данных: string
Описание: HTML текст
- $len
Тип данных: string
Описание: Максимальная длина строки
- $encoding
Тип данных: string
Описание: Кодировка
Значение по умолчанию: UTF-8
Note
Эта функция возвращает тип данных string
strip_tags_smart
Более продвинутый аналог strip_tags() для корректного вырезания тагов из html кода.
<?php strip_tags_smart($s, $allowable_tags = null, $is_format_spaces = true, $pair_tags = array('script', 'style', 'map', 'iframe', 'frameset', 'object', 'applet', 'comment', 'button', 'textarea', 'select'), $para_tags = array('p', 'td', 'th', 'li', 'h2', 'h3', 'h4', 'h5', 'h5', 'h6', 'div', 'form', 'title', 'pre') ) { /** . . */ }
Параметры функции
- $allowable_tags
Тип данных: array|null
Описание: Массив тагов, которые не будут вырезаны
Значение по умолчанию: null
Пример: ‘b’ — тег b с сохранением атрибутов, ‘<b>’ — тэг b без сохранения атрибутов
- $is_format_spaces
Тип данных: bool
Описание: Форматировать пробелы и переносы строк? Вид текста на выходе (plain) максимально приближеется виду текста в браузере на входе. Другими словами, грамотно преобразует text/html в text/plain. Текст форматируется только в том случае, если были вырезаны какие-либо таги.
Значение по умолчанию: true
- $pair_tags
Тип данных: array
Описание: Массив имён парных тагов, которые будут удалены вместе с содержимым
Значение по умолчанию: array(‘script’, ‘style’, ‘map’, ‘iframe’, ‘frameset’, ‘object’, ‘applet’, ‘comment’, ‘button’, ‘textarea’, ‘select’)
- $para_tags
Тип данных: array
Описание: Массив имён парных тагов, которые будут восприниматься как параграфы (если $is_format_spaces = true)
Значение по умолчанию: array(‘p’, ‘td’, ‘th’, ‘li’, ‘h2’, ‘h3’, ‘h4’, ‘h5’, ‘h5’, ‘h6’, ‘div’, ‘form’, ‘title’, ‘pre’)
Note
Эта функция возвращает тип данных string
Возможности: |
|
---|
last_implode
Склеивание всех элементов массива по разделителю. Для последнего элемента используется специфичный разделитель.
<?php last_implode($sep, $data, $last = '') { /** .. */ }
Параметры функции
- $sep
Тип данных: string
Описание: разделитель элементов массива
- $data
Тип данных: array
Описание: Массив
- $last
Тип данных: string
Описание: Разделитель для последнего элемента массива. Если разделитель не установлен или пуст, то используется $sep
Значение по умолчанию: null
Note
Эта функция возвращает тип данных string
is_nop
Является ли строка пустой.
<?php is_nop($val) { /** .. */ }
Параметры функции
- $sep
Тип данных: string
Описание: проверяемая строка
Note
Эта функция возвращает тип данных bool
first_word
Получение первого слова из строки.
<?php first_word($string) { /** .. */ }
Параметры функции
- $string
Тип данных: string
Описание: Обрабатываемая строка
Note
Эта функция возвращает тип данных string
PHP Variables and Strings Tutorial – vegibit
Разберите свой Fender Stratocaster и наденьте новые струны. Подключитесь к эпическому стеку Marshall и доведите его до 11. Спросите публику, готовы ли они раскачать ваш лучший британский акцент. Мы собираемся рок-н-ролл с PHP Variables и Strings. Наш вступительный рифф расскажет о некоторых соглашениях об именах, необходимых для создания ваших собственных переменных и строк. Далее, когда вы будете разрывать гриф вверх и вниз, вам нужно будет избегать некоторых ключевых слов, которые не являются частью гаммы вашего джема. Наконец, вы начнете соло и примените свои новые навыки. Давайте рок-н-ролл.
Соглашения об именах переменных PHP
Переменные являются частью каждого языка программирования, и PHP не исключение. Мы используем их для хранения изменяемой информации, то есть мы можем вставлять, обновлять или удалять значения из переменной. Думайте о переменной как о небольшом фрагменте памяти в вашем компьютере. Как следует из их названия, переменные будут содержать изменяющиеся данные в течение своего жизненного цикла. Переменные PHP следуют определенному соглашению об именах. Вот некоторые из рекомендаций, которым нужно следовать.
Начинается со знака доллара $ Каждая переменная PHP начинается со знака доллара. Кому-то это нравится, а кого-то это раздражает. В общей схеме это служит хорошей цели, поскольку при просмотре кода вы можете быстро идентифицировать все, что является переменной. Это помогает с читабельностью.
- Буква или символ подчеркивания За начальным знаком доллара должна следовать буква или символ подчеркивания.
- Буквы Цифры Дефисы и подчеркивания Общее имя переменной может содержать любой из этих символов.
- Без пробелов В имени переменной не должно быть пробелов.
- С учетом регистра Переменные чувствительны к регистру, поэтому
$boo
и$BOO
— это две разные переменные.
Примеры переменных PHP
Приведенный выше фрагмент содержит множество допустимых имен переменных. Если бы вы использовали их в своем коде, они бы отлично работали. Однако есть несколько лучших практик, поэтому давайте рассмотрим эту идею. Во-первых, последний пример $__coolThing
— плохая идея. Причина в том, что эта переменная начинается с двух символов подчеркивания. Хотя технически вы можете это сделать, это может сильно запутать других, которым может понадобиться работать с вашим кодом. Хуже всего то, что $_thing
стиль создания переменной. Сам PHP использует подчеркивание для особых случаев использования. Вы не хотите сомневаться в себе, когда сталкиваетесь с этими экземплярами с одним или несколькими символами подчеркивания в начале. Общий стиль переменных, который лучше всего использовать в PHP, имеет вид $my_variable
. Это может иметь место и в других языках, однако в PHP вы обнаружите, что многие разработчики придерживаются этого стиля.
Ключевые слова PHP
Еще одна вещь, о которой следует помнить, это ключевые слова, которые PHP уже использует. Это все языковые конструкции. Технически вы все еще можете использовать их в качестве имен переменных, но зачем вам это делать? Не делайте этого, так как вы только запутаете себя и других.
__halt_compiler() | реферат | и | массив() | как |
перерыв | вызываемый | кейс | поймать | класс |
клон | константа | продолжить | объявить | по умолчанию |
штамп() | до | эхо | еще | иначе |
пустой () | конец объявления | конецдля | эндфорич | конец |
концевой выключатель | окончание | оценка() | выход() | удлиняет |
окончательная | наконец | для | для каждого | функция |
глобальный | перейти к | если | орудия | включает |
include_once | экземпляр | вместо | интерфейс | isset () |
список() | пространство имен | новый | или | печать |
частный | защищенный | общественный | требуется | require_once |
возврат | статический | переключатель | бросить | черта |
попробовать | не установлен () | использовать | или | в то время как |
хор | выход |
Использование переменных PHP
Самый простой способ понять переменные — создать несколько собственных и начать размещать в них данные. Здесь мы создадим две переменные и поместим в них различную информацию, а затем отобразим их в браузере, чтобы подтвердить, что содержимое указанных переменных действительно обновляется и изменяется.
<голова> <мета-кодировка="utf-8">Переменные в PHP голова> <тело> '; $переменная = 50; echo $переменная.'
'; $something_else = 'Вы великолепны, сэр'; эхо $something_else; ?> тело>
В первой строке мы используем оператор присваивания =
, чтобы поместить значение 25
в переменную с метким названием 9.0029 $переменная . В строке 2 мы используем языковую конструкцию echo
для вывода на экран содержимого переменной $variable
. Обратите внимание, что в этой же строке мы используем оператор конкатенации .
, чтобы добавить тег разрыва строки html, чтобы у нас было какое-то полуприличное форматирование при запуске скрипта. В этот момент, когда скрипт запустится, браузер увидит на экране значение 25
.
Поскольку сценарий продолжается сверху вниз, как и все сценарии PHP, мы принимаем значение 50
и перезапишите существующее значение 25
. Просто переназначив значение существующей переменной, мы можем перезаписать или стереть , как любят говорить некоторые программисты, значение. Когда мы затем выводим ту же переменную на экран, мы видим, что теперь это 50
. Отличная работа джедая.
В строке 7 сценария мы создаем вторую переменную с именем $something_else
. В первых двух сценариях мы помещали числовые значения в переменную. Когда мы это делаем, нам не нужно заключать данные в одинарные или двойные кавычки. Однако в этом последнем примере мы пытаемся поместить строку в $something_else
, поэтому эти данные заключены в одинарные кавычки. Одинарные и двойные кавычки имеют разные значения в PHP, к которым мы вскоре вернемся. В качестве последнего шага в этой базовой php-программе мы просто повторяем содержимое $something_else
и подтверждаем, что да — Вы, сэр, великолепны .
Необработанный HTML-вывод
<голова> <мета-кодировка="utf-8">Переменные в PHP голова> <тело> 25
50
Вы великолепны, сэр. тело>
Визуализированный вывод браузера
25
50
Вы, сэр, великолепны
Работа со строками в PHP
Строки распространены в любом языке программирования, который вы можете использовать. Мы даже использовали строки в этом уроке, так что давайте рассмотрим их поближе. Строка — это просто набор одиночных символов. Символами могут быть буквы, цифры, символы и так далее. Эта строка символов будет заключена либо в одинарные, либо в двойные кавычки, чтобы обозначить, что вы действительно имеете дело со строкой. Теперь полезно помнить, что при работе со строками стиль их заключения в двойные и одинарные кавычки имеет другое значение. У вас по-прежнему будет строка, но основное отличие состоит в том, что с двойными кавычками PHP может использовать интерполяцию, что означает, что он может извлекать значение переменной из этой переменной и отображать значение при выполнении кода. Одинарные кавычки не позволяют этого, поэтому при использовании одинарных кавычек вы обнаружите, что часто используете оператор конкатенации, если хотите создать строки любой длины с переменными. Оба подхода работают, попробуйте их и посмотрите, что вам нравится. лучший.
Самый простой пример строки
Начнем с самого начала, давайте посмотрим на очень простую строку в PHP, которую мы выводим в браузер.
Возможно, вы что-то заметили в виде символа обратной косой черты . Когда мы используем строки в PHP и стиль одинарных кавычек, если в строке есть какие-либо одинарные кавычки, нам нужно экранировать , чтобы движок PHP знал, что это не конец нашей строки, а фактический символ, с которым мы хотели бы работать. На этом легко споткнуться, поэтому запишите это.
Ввод HTML в строку PHP
Мы упоминали, что вы можете вставлять в свои строки буквы, цифры, символы и т. д. Угадайте, что такое HTML? Правильно, это набор символов, используемых для разметки данных на веб-странице. Это означает, верно, Нэшвилл, что вы можете поместить настоящий HTML в свои строки. С вашим воображением вы можете создавать всевозможные дикие и сумасшедшие вещи, используя этот подход. Давайте рассмотрим простой пример.
<голова> <мета-кодировка="utf-8">Строки в PHP голова> <тело>Я живу в теге h2
'; echo 'Разве это не прекрасно?
'; echo 'Почему да, да, дружище.
Итак, мы видим, что, включив HTML в саму строку, мы можем значительно изменить то, как браузер отображает данные.
Работа с двойными кавычками в строках PHP
Теперь мы возьмем тот же фрагмент и немного изменим его. Мы будем использовать некоторые переменные, а затем поместим эти переменные в строки, которые будут отправлены в браузер. Я знаю, что вы взволнованы, так что давайте сразу к делу.
<голова> <мета-кодировка="utf-8">Строки в PHP голова> <тело>I $verb в теге h2
"; echo "Разве это не красивое $state?
"; echo "Почему да, да, это $person.