- •1.4 Варіанти тегів php
- •Конструкції мови if, for, do..While, foreach, while, switch
- •1.6 Коротка інструкція умовного оператора if
- •1.7 Інструкції include, require і інструкції однократного виключення
- •1.8 Оператори echo і print
- •2. 1 Визначення рівності однієї змінної до іншої
- •2.2 Глобальні зміні
- •2.3 Статичні зміні
- •2.4 Використання однієї змінної як посилання на іншу
- •2.4 Використання змінної для зберігання імені іншої змінної
- •Константи
- •3. 1 Одновимірні масиви
- •3.2 Багатовимірні мастви
- •3.3 Суперглобальні масиви і їх використання
- •3.4 Основні функції для роботи з масивом
- •3.5 Сортування масиву
- •4. Робота з рядками
- •4.1 Регулярні вирази
- •4.2 Видалення пробілів
- •4.3 Пошук однакових рядків
- •4.4 Об’єднання рядків
- •Функції для роботи з рядками
- •5. Робота з числами
- •6. Робота з датою
- •7. Функції
- •7.1 Оператор return
- •7.2 Рекурсія
- •7.3 Виклик функції за допомогою імені збереженого в змінній
- •7.4 Передання і повернення значення по посиланню
- •8.1 Класи і модифікатори доступу
- •8.2 Конструктори
- •8.3 Знищення об’єкту
- •8.4 Наслідування
- •9. Обробка web-форм за допомогою php
- •9.1 Отримання даних за допомогою методу post
- •9.2 Отримання даних за допомогою методу get
- •9.3 Організація завантаження даних на сервер
- •10. Робота із файлами та каталогами
- •10.1 Відкриття файлів
- •10.2 Читання файлу
- •10.3 Запис у файл
- •10.4 Копіювання файлів
- •10.5 Видалення файлу
- •10.6 Переіменування файлу
- •11. Робота із сесіями і куксі
- •12. Робота з Базами Даних MySql
- •12.1 З'єднання з бд
- •12.2 Отримання даних із бд
- •13.2 Приклад використання
4. Робота з рядками
4.1 Регулярні вирази
Регулярні вирази - надзвичайно потужний інструмент роботи з рядками. З їх допомогою можна проводити аналіз і зміна рядків на основі заданого шаблону.
Шаблон состовляется з набору модифікаторів, деякі з яких наведено у наступній таблиці.
\ - Наступний символ є спеціальним. Так само застосовується для вказівки символів, які можуть використовуватися в якості модифікаторів. |
\n - відповідає символу переведення рядка \* - символ "*", а * - модифікатор |
^ - Маркер початку рядка. |
^abc - рядок, що починається з "abc". |
$ - Маркер кінця рядка. |
abc$ - рядок, що закінчується на "abc". |
* - Попередній символ зустрічається 0 або більше разів. |
Шаблоном w* відповідє рядок what, agwt |
+ - Попередній символ зустрічається 1 або більше разів. |
Шаблоном w+ відповідають рядки what, agwt. |
? - Попередній символ зустрічається 0 або 1 раз. |
Шаблоном w?r відповідають рядки ara, awra. |
. - Відповідає будь-якому символу, відмінному від "\n". |
|
У PHP існує функція для роботи з регулярними виразами: ereg.
Функції з суфіксом i вдають із себе аналоги функцій без цього суфікса, не чувствтітельние до регістру операндів.
Розглянемо функцію ereg (), синтаксис якої: int ereg(string pattern, string string, array [regs]);
Розглянемо деякий адресу maxx@mail.ru. Очевидно, що правдоподібний адреса повинна мати вигляд "слово@слово.слово". У термінах шаблонів довільний символ позначається знаком "." (ми не будемо зараз враховувати той факт, що в адресах припустимі не всі символи). У кожному слові повинен бути принаймні один символ, таким чином, шаблон слова буде мати вигляд ".+". Згадаймо тепер, що "." - це модифікатор, і для явної вказівки точки (в якості символу) потрібно писати "\.".
Таким чином шаблон буде мати вигляд ".+@.+ \ ..+".
Наша перевірка буде мати наступний вигляд:
if( ereg(".+@.+\..+", $email) ) {
echo "Адрес, правильний";
}
else{ echo "Введіть, адресу наново"; }
4.2 Видалення пробілів
Ці функції можуть бути дуже корисні при обробці даних, отриманих з форм.
Видаляє ведучі та кінцеві пробіли в рядку $ s і повертає змінену рядок.
string trim ( string $s );
Приклад
$st = " Hello ";
$st = trim($st);
Рузультат: "Hello"
Видаляє провідні прогалини в рядку $s і повертає змінену рядок.
string ltrim ( string $s );
Приклад
$st = "H e l l o";
$st = trim($st);
Рузультат: "Hello"
А ось позбавитися від суміжних пробілів всередині рядка, наприклад, за допомогою циклу:
while( strpos($st,' ')!==false )
{
$st = str_replace(' ',' ',$st);
};
4.3 Пошук однакових рядків
Коли користувач починає пошук певних елементів серед введених ним даними, легко допуститися помилок. В цьому випадку можна використовувати метод , котрий дозволяє вилучати слова близькі за значенням до даного слова.
Для цього існує функція similar_text(). Перевіривши два рядки, ця функція вираховує значення, яке показує, на скільки перевірені рядки близькі.
Приклад:
<?
//Створюємо масив імен, які будемо тестувати
$names = array('Robert Smyth', 'Bobby Smythe', 'Roberto Thithe');
//Перебираємо їх в циклі, порівнюючи з іменем «Roberto Smyth»
$output = '';
foreach($names as $name){
similar_text($name, 'Roberto Smyth', $percent);
$output .= "{$name} = {$percent}%\n";
}
//Тепер виводимо значення кожний елемент близькості даного слова у процентах
echo "<pre>{$output}</pre>";
?>