7 Робота з рядками
Нижче буде приведений перелік основних рядкових функцій в РНР.
Функція trim - видаляє пробіли з початку і кінця рядка. Її доречно використовувати наприклад для запобігання некоректного вводу пароля, чи логіну в поле авторизації, тобто користувач може випадково ввести пробіл, програма його врахує, як один з символів і видасть помилку, що користувача з таким логіном, чи паролем не існує. Щоб цього не сталось і використовується вище згадана функція, яка видаляє лишні пробіли.
Наприклад:
<? $name = trim ($name); $password = trim ($password); $email = trim ($email); ?>
В даному прикладі ми видалили лишні пробіли з форми в якій зазначені такі дані, як логін користувача, пароль і його електронна адреса. А функція ltrim видаляє пробіли лише на початку рядка. Рядкова функція print аналогічна оператору echo, тобто виводить відповідний рядок. Функція strlen рахує кількість символів в рядку. З її допомогою можна перевірити довжину рядка. Наприклад давайте перевіримо за її допомогою правильність вводу e-mail адреси користувачем:
<?
if (strlen($email) < 6)//якщо в рядку менше 6-ти символів
{
echo "Ви невірно ввели email адресу!"; //виводиться слідуюче повідомлення
}
?>
З допомогою функції str_replace можна здійснити заміну одних символів іншими. Ось її синтаксис:
str_replace ("що замінити", "чим замінити", $рядок);
Слідуючу функцію strcmp, яка призначена для порівняння рядків, можна застосовувати наприклад при ідентифікації пароля введеного користувачем в форму авторизації з паролем, що прописаний в БД в момент реєстрації цього користувача. Ось приклад:
<?
if (strcmp ($newstr, $pass) == 0) // якщо рядки співпадають, то функція повертає значення "0"
{
echo "Ви є зареєстрованим користувачем."; // тоді виводиться такий текст
}
else
{
echo " Ви ввели невірний пароль."; // інакше при неспівпадінні рядків виводиться таке повідомлення
}
?>
Функція strtolower - переводить символи рядка в нижній реєстр. Ось синтаксис:
strtolower($рядок);
А strtoupper - навпаки, тобто в верхній реєстр.
І остання функція про яку хочеться згадати в даній статті - це ucfirst. Вона переводить перший символ рядка в верхній реєстр. Її синтаксис доволі простий:
ucfirst($рядок);