Вивчаємо функції PHP для роботи з рядками. Частина 1

15

Від автора: у цій статті ми розглянемо основні функції PHP для роботи з рядками.

Оскільки практично всі CMS (може Ваші самописні або чиїсь типу free) працюють з базами даних, то нам доведеться впритул працювати із рядковими змінними. Можливо, потрібно буде замінити певний ділянку тексту на інший текст. Або вставити в середині (на початку або в кінці) якоїсь статті певний тест.

Без базових знань роботи з функціями рядків в PHP ми нічого з вище перерахованих і багатьох інших операцій зробити не зможемо.

Для початку ми вивчимо простий пошук і заміну в рядку.

Функція 1

Є така проста php функція substr_count(), яка рахує кількість підрядків у рядку. Наприклад, є такий рядок: «бетон і залізобетон», наша мета-знайти кількість підрядків «бетон». Функція поверне значення 2 (бо знайде 2 підрядка, виділені жирним шрифтом).

Приклад:

‘;
$string = strtolower($string); // трансформуємо в нижній регістр, сподіваюся тут все ясно.
echo ‘ Текст beton зустрічається ‘.substr_count ($(string’beton’).’ рази в рядку вище’; //2 знаходить відповідності!!!
?>

Вивчаємо функції PHP для роботи з рядками. Частина 1

Функція 2

Така ж по складності php функція str_replace() — операція заміна одного слова (чи кількох слів, або навіть речень) на інше.

Приклад:

‘;
$string = str_replace(‘полювання’, ‘рибалки’, $string); //робимо заміну слова «полювання» на слово «риболовлі»
echo $string.’
‘;
?>

Вивчаємо функції PHP для роботи з рядками. Частина 1

Функція 3

Раптом нам потрібно буде виділити в рядку декілька символів підряд ,наприклад, з другого по десятий символ в рядку. В цьому нам допоможе php функція substr().

‘;
?>

Вивчаємо функції PHP для роботи з рядками. Частина 1

Зауваження: функція неадекватно працює з кодуванням файлу в UTF8.

У цій функції є і, скажімо так, зворотна сторона медалі. Можна також виділяти символи з кінця рядка. Для цього потрібно ставити значення вихідного положення символу, з якого починається виділення, негативним.

Приклад: виберемо слово «полювання»:

‘; // виведе на екран «полювання»
?>

Функція 4

Будь-який рядок можна експортувати (перетворити) в масив, елементами якого можуть бути як слова, так і пропозиції. Для цього в php існує функція explode().

Розглянемо кілька прикладів:

a) Розіб’ємо рядок за словами.

‘;
$wordsArray = array();
$wordsArray = explode(‘ ‘, $string);
echo «;
print_r($wordsArray);
echo «;
?>

Вивчаємо функції PHP для роботи з рядками. Частина 1

б) За пропозиціями

‘;
$wordsArray = array();
$wordsArray = explode(‘. ‘, $string);
echo «;
print_r($wordsArray);
echo «;
?>

Вивчаємо функції PHP для роботи з рядками. Частина 1

Так само це пункт статті має зворотну операцію. З масиву утворити рядок. Припустимо, ми маємо масив виду:

1-й елемент: Hello

2-й: «пробіл»

3-й: World

…за допомогою функції implode() масив перетворюється в рядок такого виду: «Hello World», де 2-й елемент масиву є пропуском між словами Hello і World.

Розглянемо розширений варіант попереднього прикладу:

‘;
$wordsArray = array();
$wordsArray = explode(‘. ‘, $string);
echo «;
print_r($wordsArray);
echo «;
echo ‘
‘;
$string = implode(‘. ‘, $wordsArray);
echo ‘назад склеєна рядок: ‘.$string.’
‘;
?>

Вивчаємо функції PHP для роботи з рядками. Частина 1

Функція 5

Припустимо, ми маємо рядок, в якій з певного символу
(включно) і до кінця рядка потрібно витягти текст. Наприклад, ми
маємо рядок «http://www.webformyself.com/», а нам потрібно витягти з неї
тільки «www.webformyself.com/». Дивимося, як це можна реалізувати. Для цього нам знадобиться функція strstr().

Зауваження: з цією функцією можна далеко не такі прості речі робити.

Функція 6

Функція strpos() знаходить позицію першого входження рядка і
повертає число (номер позиції в рядку).

Приклад:

strrpos() знаходить позицію останнього входження рядка.

Ось і закінчився мій основний джентльменський набір функцій по роботі з рядками. Чекайте другу частину з більш складними прикладами. Цих же функцій у комплексному застосуванні + кілька нових Вивчаємо функції PHP для роботи з рядками. Частина 1

Бонус

А тепер бонусне додаток: комплексне застосування всіх вивчених сьогодні в статті функцій по роботі з рядками в PHP.

‘.$params.’

‘;
$paramsArray = array();
$paramsArray = explode(‘;’,$params);
$sortedParams = array();
foreach ($paramsArray as $param){
$paramName = substr($param,0,strpos($param,’=’));
$paramValue = substr($param, strpos($param,’=’)+1);
$sortedParams[$paramName] = $paramValue;
}
echo ‘Параметри задані у вигляді масиву, що істотно полегшує роботу з ними:
‘;
echo «;
print_r($sortedParams);
echo «;
?>

Вивчаємо функції PHP для роботи з рядками. Частина 1

Спробуйте самі розібрати кожну строчку коду.

Висновок

У цій статті ми ознайомилися лише з основними функціями мови PHP по роботі з рядками, і далеко не всі вони доброзичливі з кирилицею. Тому для деяких потрібно буде писати свою модифікацію або знайти в інеті готову. З усіма цими проблемами ви зіткнетеся самі, і, сподіваюся, вихід теж знайдете самі. Це і буде вашим прогресом.

Читайте в наступній статті на цю тему про комплексному застосуванні і нових функцій.

Вивчаємо функції PHP для роботи з рядками. Частина 1

E-mail: [email protected]

Проект webformyself.com — Як створити свій сайт. Основи самостійного сайтобудування

P. S. Хочете опублікувати цікавий тематичний матеріал і заробити? Якщо відповідь «Так», то тисніть сюди.