Пока я творю, я живу!
Блог посвящен: HTML, CSS, PHP, Wordpress, Bootstrap
Всем привет!
Продолжаем изучать основы PHP с нуля!
В этом уроке я расскажу и покажу некоторые функции для работы со строками, например, как в строке сделать замену, определить длину строки, удалить все HTML-теги из строки и т.д.
Вот список названий функций, о которых пойдет речь в этом уроке:
chunk_split()
convert_cyr_string()
bin2hex()
convert_uuencode()
md5()
str_repeat()
str_replace()
str_shuffle()
strip_tags()
strrev()
strtolower()
strtoupper()
substr_replace()
substr()
ucfirst()
ucwords()
strlen()
str_pad()
chunk_split()
chunk_split() – функция php применяется для разделения строки на фрагменты.
Синтаксис:
chunk_split(string,length,end );
Настройки:
string - строка для разделения
length - число, которое определяет длину кусков (по умолчанию 76).
end - строка, которая указывает, что должно быть в конце каждого куска.
Пример:
<?php $str = "StepkinBlog.ru"; echo chunk_split($str,2,"...<br>"); ?>
Что я сделал? Я строку «StepkinBlog.ru» поделил на фрагменты. Через каждые 2 символа в строке будут выводиться две буквы с тремя точками «…» и с новой строки.
Результат:
St...
ep...
ki...
nB...
lo...
g....
ru...
convert_cyr_string()
convert_cyr_string() – эта функция php преобразовывает строки из одной кириллической кодировки в другую.
Синтаксис:
convert_cyr_string (str,входная_кодировка, выходная_кодировка );
«str» – эта строка, которая будет перекодироваться.
«входная_кодировка» и «выходная_кодировка» - я думаю, тут все понятно. Задаются здесь параметры кодировки одной буквой.
Пример:
Задание: перекодируем фразу "Привет всем!" из кодировки windows-1251 в koi8-r и обратно.
<? $str1 = "Привет всем!"; $str2 = convert_cyr_string ($str1,"w","k"); echo ("Я перекодировал слово - '$str1' в koi8-r. Вот результат - '$str2'"); echo ("<br>"); $str3 = convert_cyr_string($str2,"k","w"); echo ("Теперь перекодируем слово '$str2' в win. Вот результат - '$str3'"); ?>
Результат:
Я перекодировал слово - 'Привет всем!' в koi8-r. Вот результат - 'рТЙЧЕФ ЧУЕН!'
Теперь перекодируем слово 'рТЙЧЕФ ЧУЕН!' в win. Вот результат - 'Привет всем!'
bin2hex()
bin2hex() - производит преобразование символьных данных в шестнадцатеричный вид.
<? $str1 = "Привет всем!"; $str2 = bin2hex($str1); echo($str2); ?>
Можно и так:
<? $str2 = bin2hex ('Привет всем!'); echo ($str2); ?>
Результат:
cff0e8e2e5f220e2f1e5ec21
convert_uuencode()
convert_uuencode() - кодирует данные в формат uuencode
Пример:
<?php echo convert_uuencode ("Мой блог - StepkinBlog.ru"); ?>
«Мой блог - StepkinBlog.ru» перекодируется вот в такие символы:
9S.[I(.'K[N,@+2!3=&5P:VEN0FQO9RYR=0`` `
Если нужно расшифровать, то эти перекодированные символы вставляете в коде вместо текста «Мой блог - StepkinBlog.ru»:
<?php echo convert_uudecode ("9S.[I(.'K[N,@+2!3=&5P:VEN0FQO9RYR=0`` `"); ?>
Результат:
Мой блог - StepkinBlog.ru
md5()
md5() - возвращает MD5-хэш строки
<?php $stepkinblog = md5("Доброе утро"); print $stepkinblog; ?>
Результат:
ef636e4d03c4aa310ad199d7c88de71a
str_repeat()
str_repeat() - возвращает повторение строки заданное количество раз.
Синтаксис:
str_repeat ('что нужно повторить', количество раз);
Пример:
<?php echo str_repeat ('Привет и так 5 раз',5); ?>
Результат:
Привет и так 5 раз Привет и так 5 раз Привет и так 5 раз Привет и так 5 раз Привет и так 5 раз
str_replace()
str_replace() - производит замену одних символов в строке другими.
Синтаксис:
str_replace (search, replace, subject)
search - строка или массив поиска
replace - строка или массив замены
subject - строка или массив, где будет сделана замена.
Пример:
<?php echo str_replace("Петя","Степа", "С добрым утром, Петя!"); ?>
Результат:
С добрым утром, Степа!
str_shuffle()
str_shuffle() - возвращает строку с переставленными в ней символами случайным образом.
Пример:
<?php echo str_shuffle ('PHP на StepkinBlog.ru'); ?>
Результат:
krBolHu .geSаpPнPnti
strip_tags()
strip_tags() – удаляет HTML и PHP тэги из строки
Пример:
<?php // с учетом HTML тег echo ("<h2><b>PHP</b> - <i>язык программирования.</i></h2>"); // удаляем HTML тэги из строки echo strip_tags("<h2><b>PHP</b> - <i>язык программирования.</i></h2>"); ?>
Результат:
PHP - язык программирования.
strrev()
strrev() - переворот строки
Пример:
<?php echo strrev ("PHP для начинающих на блоге StepkinBLOG.RU"); ?>
Результат:
UR.GOLBnikpetS еголб ан хищюаничан ялд PHP
strtolower()
strtolower() - преобразует буквенные символы из верхнего регистра в нижний.
Пример:
<?php echo strtolower ("PHP на блоге StepkinBLOG.RU"); ?>
Результат:
php на блоге stepkinblog.ru
strtoupper()
strtoupper() - преобразует буквенные символы из нижнего регистра в верхний.
Пример:
<?php echo strtoupper ("stepkinblog.ru"); ?>
Результат:
STEPKINBLOG.RU
substr_replace()
substr_replace() - заменяет часть строки другой строкой.
Синтаксис:
substr_replace (где меняем, на что меняем, с какого символа, [сколько символов]);
Если не указать последний параметр, то замена произведется до конца строки.
Пример:
<?php $str = 'Строка на php'; echo substr_replace ( $str, 'Замена всей строки', 0) . '<br><br>'; echo substr_replace ( $str, ' в начале ', 0, 0) . '<br><br>'; echo substr_replace ( $str, ' в конце ', 13) . '<br><br>'; echo substr_replace ( $str, ' Я ПО СЕРЕДИНКЕ ', 6, -7) . '<br><br>'; ?>
Результат:
Замена всей строки
в начале Строка на php
Строка на php в конце
Строка Я ПО СЕРЕДИНКЕ на php
substr()
substr() - вырезает и возвращает подстроку из строки.
Синтаксис:
substr (строка, откуда, [сколько]);
Пример:
<?php echo substr('Мой блог - stepkinBLOG.ru', 11); ?>
Результат:
stepkinBLOG.ru
Если нужно вырезать слово «блог» и вывести на экран, то вот так:
<?php echo substr('Мой блог - stepkinBLOG.ru', 4, 4); ?>
Как видите, в коде я начал вырезку с 4 символа (пробел включаем в символ) и указал, сколько символов нужно вырезать, у меня в примере 4.
ucfirst()
ucfirst() – эта функция изменяет регистр первого символа в строке на верхний.
Пример:
<?php echo ucfirst ('hello'); ?>
Результат:
Hello
ucwords()
ucwords() - эта функция изменяет регистр первого символа в каждом слове строки.
Пример:
<?php echo ucwords("костаневич степан"); ?>
Результат:
Костаневич Степан
strlen()
strlen() - количество символов в строке
Пример:
<?php echo strlen ('StepkinBlog.ru'); ?>
Результат:
14
str_pad()
str_pad() – эта функция дополняет строку другой строкой до заданной длины
Синтаксис:
str_pad (строка, до скольки символов, чем заполнить, [с какой стороны]);
Пример:
<?php $arr = 'StepkinBLOG'; echo str_pad($arr, 14, '+'); ?>
Результат:
StepkinBLOG+++
Теперь попробуем разместить дополнительную строку слева:
<?php $arr = 'StepkinBLOG'; echo str_pad($arr, 14, '+', STR_PAD_LEFT); ?>
Результат:
+++StepkinBLOG
Конечно, функций для работы со строками намного больше, но я решил разместить в статье только самые интересные и полезные. Если захотите больше строковых функций, то можете найти их в Интернете.
В синтаксисе функции convert_cyr_string() опечатка:
chunk_split (str,входная_кодировка, выходная_кодировка );
Ответить
28 сентября, 2017 at 13:38
Спасибо, Анна! Вы очень внимательны, я исправил.
Еще раз спасибо!
Ответить
В примере функции ucwords вы допустили ошибку: вместо Костаневич Степан следует писать с маленькой буквы костаневич степан
Ответить
11 июня, 2019 at 16:18
Спасибо, Паша, исправил.
Ответить