Приднестровская поддержка XOOPS
Перечислим основные функции для работы со строками:
□ strlen() возвращает количество символов в строке:
$str = "Строка";
echo strlen($str); // Выведет: 6
□ trim() удаляет пробельные символы в начале и конце строки. Пробельными символами считаются: пробел, символ перевода строки (\n), символ возврата каретки (\r), символы горизонтальной (\t) и вертикально (\v) табуляции и символ конца строки (\0):
$str = ' Строка ';
$str = trim($str);
echo "'$str'"; // Выведет: 'Строка'
□ ltrim() удаляет пробельные символы в начале строки:
$str = ' Строка ';
$str = ltrim($str);
echo "'$str'"; // Выведет: 'Строка '
□ rtrim() удаляет пробельные символы в конце строки:
$str = ' Строка ';
$str = rtrim($str);
echo "'$str'"; // Выведет: ' Строка'
□ chop() удаляет пробельные символы в конце строки:
$str = ' Строка ';
$str = chop($str);
echo "'$str'"; // Выведет: ' Строка'
□ strip_tags() удаляет из строки все HTML-теги, за исключением указанных во втором параметре:
$str = '<span style="color: red"><b>Строка</b></span>';
$str1 = strip_tags($str);
$str2 = strip_tags($str, '<b>');
echo $str1 . '<br>'; // Выведет: Строка<br>
echo $str2; // Выведет: <b>Строка</b>
Следует заметить, что функция strip_tags() работает не совсем корректно. Если в строке встретится открывающая угловая скобка ("<"), а за ней сразу другой символ, то будет удален весь фрагмент от скобки до конца строки:
$str = '5<10 Эта строка будет удалена!';
$str1 = strip_tags($str);
echo $str1; // Выведет: 5
□ addslashes() добавляет обратную косую черту для защиты специальных символов:
$str = '"Волга", "Москвич", "Жигули"';
$str = addslashes($str);
echo $str; // Выведет: "Волга", "Москвич", "Жигули"
□ stripslashes() удаляет обратные косые черты:
$str = '\"Волга\", \"Москвич\", \"Жигули\"';
$str = stripslashes($str);
echo $str; // Выведет: "Волга", "Москвич", "Жигули"
□ htmlspecialchars(<Строка>, [<Режим>], [<Кодировка>]) заменяет специальные символы их HTML-эквивалентами. Второй необязательный параметр <Режим> задает режим преобразования двойных и одинарных кавычек. Может принимать следующие значения:
• ENT_COMPAT — преобразуются только двойные кавычки (значение по
умолчанию);
• ENT_QUOTES — преобразуются и двойные, и одинарные кавычки;
• ENT_NOQUOTES — двойные и одинарные кавычки не заменяются:
$str = '"Волга", "Москвич"';
$str = htmlspecialchars($str);
// Для строки в кодировке UTF-8 такое выражение:
// $str = htmlspecialchars($str, ENT_COMPAT, 'UTF-8');
echo $str;
// Выведет: "Волга", "Москвич"
□ split() разделяет строку на подстроки по указанному разделителю и добавляет их в массив:
$str = "Фамилия\tИмя\tОтчество\tГод рождения";
$Mass = split("\t", $str);
foreach ($Mass as $key) {
echo $key . '<br>';
} // Выведет: Фамилия<br>Имя<br>Отчество<br>Год рождения<br>
Функция позволяет использовать регулярные выражения.
□ explode() разделяет строку на подстроки по указанному разделителю и добавляет их в массив. Аналогична функции split(), но регулярных выражений не поддерживает, поэтому работает быстрее:
$str = "Фамилия\tИмя\tОтчество\tГод рождения";
$Mass = explode("\t", $str);
foreach ($Mass as $key) {
echo $key . '<br>';
} // Выведет: Фамилия<br>Имя<br>Отчество<br>Год рождения<br>
□ substr() возвращает подстроку указанной длины, начиная с заданной позиции. Если длина не указана, то возвращается подстрока, начиная с заданной позиции и до конца строки. Функция имеет следующий формат:
substr(<Строка>, <Начальная позиция>, [<Длина>]);
Примеры:
$str = "Строка";
$str1 = substr($str, 0, 1);
echo $str1; // Выведет: C
$str2 = substr($str, 1);
echo $str2; // Выведет: трока
□ wordwrap() позволяет разбить длинный текст на строки указанной длины.
Функция имеет следующий формат:
wordwrap(<Строка>, <Количество символов>, <Символ разрыва>);
Например, следующий пример
$str = "Очень длинная строка перед выводом";
echo wordwrap($str, 7, "<br>");
выведет каждое слово на отдельной строчке:
Очень
длинная
строка
перед
выводом
□ nl2br() добавляет перед всеми символами новой строки (\n) тег <br />
(XML-аналог HTML-тега <br>):
$str = "Очень\nдлинная\nстрока\nперед\nвыводом";
echo nl2br($str);
Исходный HTML-код, выведенный этим кодом PHP, будет выглядеть следующим образом:
Очень<br />
длинная<br />
строка<br />
перед<br />
выводом
Если во втором параметре указать значение false, то будет добавляться HTML-тег <br>:
$str = "Строка1\nСтрока2";
echo nl2br($str, false);
// Строка1<br>
// Строка2
В окне Web-браузера каждое слово будет отображено на своей строчке;
□ strtoupper() заменяет все символы строки соответствующими прописными буквами:
$str = "очень длинная строка";
setlocale(LC_CTYPE, "ru_RU.CP1251"); // Настройка локали
echo strtoupper($str); // Выведет: ОЧЕНЬ ДЛИННАЯ СТРОКА
□ strtolower() заменяет все символы строки соответствующими строчными буквами:
$str = "ОЧЕНЬ длинная строка";
setlocale(LC_CTYPE, "ru_RU.CP1251"); // Настройка локали
echo strtolower($str); // Выведет: очень длинная строка
□ ucfirst() делает первый символ строки прописным:
$str = "очень длинная строка";
setlocale(LC_CTYPE, "ru_RU.CP1251"); // Настройка локали
echo ucfirst($str); // Выведет: Очень длинная строка
$str = "очень длинная строка";
setlocale(LC_CTYPE, "ru_RU.CP1251"); // Настройка локали
echo ucwords($str); // Выведет: Очень Длинная Строка
Отправитель | Нити |
---|
5 пользователь(ей) активно (4 пользователь(ей) просматривают Инструкции)
Участников: 0 Гостей: 5 далее... |