Функции работы со строками в php
Среда, 11 августа 2010 г.Рубрика: PHP программирование -> Функции
Метки: strlen | trim | функции работы со строками
Просмотров: 1501
Подписаться на комментарии по RSS
Давайте рассмотрим стандартную функцию в php - trim - она обрезает
по краям текста лишние пробелы, эта функция в основом используется в
регистрациях и входах, так как пользователь случайно может поставить по
бокам своего имени пробелы и уже имя будет не совподать, и пользователь
потеряет свой аккаунт, во избежания таких оплошностей используется
функция trim:
<?php $str = " Володя "; $str = trim ( $str ); echo $str;
Как видите из этого примера при помощи функции trim мы убрали по краям
имени лишние пробелы, и посмотрев исходный код на странице, Вы увидите,
что пробелов нет.
Также можно обрезать пробелы только с нужного края - слева и справа -
пишется это так rtrim(справа) и ltrim(слева)
<?php $str = " Володя"; $str2 = "Володя "; $str = rtrim ( $str ); $str2 = ltrim ( $str2 ); echo $str."<br />"; echo $str2;
При выполнении скрипта получится, что у двух имён нет по бокам пробелов.
Теперь давайте рассмотрим функцию md5 - эта функция вычисляет md5 хеш
строки, или проще сказать - кодирует строку, эта функция очень полезна
при создании регистрации для хранения паролей, Вы кодируете пароль при
помощи функции md5 и заносите получившийся текст в базу, но
перекодировать обратно невозможно, поэтому когда пользователь будет
вводить пароль, то по получению этого пароля кодируйте его с помощью md5
и сравнивайте с базой, этот способ очень хороший, так как даже если
взломают Вашу базу, то узнать пароли у них всё равно не получится.
А теперь давайте попробуем закодировать при помощи этой функции строку:
<?php $str = "Володя"; $str = md5($str); echo $str;
После выполнения скрипта у Вас должно будет вывестись что то вроде
этого:
f7b1419450cd705381db0e15a17cd905
Идём дальше - следующая функция - implode - она объеденяет элементы
массива со строкой - то есть, она вытаскивает все элементы массива в
одну строку и с каким-то разделителем, давайте рассмотрим на примере:
<?php $a = array ( 'Привет,', 'что', 'нового', 'сегодня?' ); $str = implode ( ', ', $a ); echo $str;
Сначала в скобках пишем разделитель для элементов массива - это может
быть как пробел, так и что угодно, после пишем обрабатываемый массив.
Следующая функция - explode - её действия похожи на предыдущую функцию,
только она действует наоборот, то есть она вытаскивает из переменной
строки записанные нами функцией implode и записывает всё это в массив:
<?php $a = array ( 'Привет,', 'что', 'нового', 'сегодня?' ); $str = implode ( ', ', $a ); echo $str; $str2 = explode ( ', ', $str ); echo ""; print_r ( $a2 ); echo "";
Здесь мы занесли в массив $str2 все данные из переменной $str - занесли в
массив по разным элементам - их получилось 4, за разделитель взяли то,
что было в прошлом примере.
Следующая функция - strtolower - она переводит все символы строки в
нижний регистр:
<?php $str = "ПрИвЕт"; $str = strtolower ( $str ); echo $str;
Как видите из этого примера мы создали переменную, где имеются ошибки в
регистре, но функция strtolower исправила эту проблему, переведя все
буквы в нижний регистр.
Следующая функция - strtoupper - эта функция переводит все символы в
верхний регистр
<?php $str = "ПрИвЕт"; $str = strtoupper ( $str ); echo $str;
Здесь мы перевели все буквы в верхний регистр.
Дальше идёт функция - ucfirst - она переводит первый символ строки в
верхний регистр, давайте рассмотрим на примере - где я советую
использовать сочетание функции перевода в нижний регистр и ucfirst:
<?php $str = "ПрИвЕт"; $str = ucfirst ( strtolower ( $str ) ); echo $str;
Здесь мы сначала перевели все символы в нижний регистр, а потом первую
букву в верхний.
Следующая функция - str_replace - она позволяет найти в каком-то тексте
какое-то слово и заменить его на какую-то замену, возьмём к примеру - у
нас есть переменная содержащая какой-то текст, и в нём нам нужно найти
слово мир и заменить его на земля.
<?php $str = "Привет мир"; $str = str_replace ( 'мир', 'земля', $str ); echo $str;
После выолнения у нас будет заменено слово мир на слово земля.
Здесь сначала пишем слово которое нужно заменить, потом слово которым
нужно заменить, и текст в котором нужно будет искать.
Следующая функция - strlen - определяет длину текста, или строки -
представим что у нас есть текст - "Привет Володя!":
<?php $str = "Привет Володя!"; $str = strlen ( $str ); echo $str;
Так как у нас отсчёт пойдёт с 0, то и длина будет равна 14.
Дальше идёт - strpos - она находит позицию слова, или чего другого, в
строке:
<?php $str = "Привет Володя!"; $str = strpos ( $str, 'Володя' ); echo $str;
Она находит начало ( позицию ) того или иного слова, в данном случае это
7. Здесь сначала пишем текст для поиска, а потом слово для поиска
позиции.
Ну и последняя функция - chr - она выводит символ под тем или иным
номером:
<?php $str = chr ( 65 ); echo $str;
Здесь она выводит символ под номером 65 - а именно А.
Попробуйте попрактиковаться с этими функциями.


функцию в php - trim всегда нравилась, но все равно спасибо. Очень нужная информация.