Вчимося літати вище: PHP функції роботи з масивами

113

Від автора: якщо поспостерігати за роботою професійного розробника, то здається, що у нього рядка коду самі лягають на робочий «полотно», поступово перетворюючись в програмне «твір». А сам програміст при цьому також уміло поводиться з мовою, як досвідчений льотчик керує сучасним літаком. Щоб так професійно пілотувати» програмної наукою, потрібно досконало знати всі функції мови. Наприклад, PHP функції роботи з масивами.

«Ульот» з масивами

Масиви широко використовуються в програмуванні, в тому числі і серверному. З їх допомогою можна застосовувати окремі операції відразу до безлічі елементів. В PHP всі види масивів змішалися воєдино. Коротко пояснимо цю «тенденцію».
Дана мова не встановлює жорстких вимог до типу значення ключів (індексу). Тобто вони можуть бути як рядковими, так і числовими. Наприклад:

«PHP»,
«HTML» => 2,
3=> «JavaScript»,
4=>345,
«hello»=>250);
?>

Як бачите, не тільки ключі можуть бути різного типу, але і самі значення елементів. Також зверніть увагу, що для оголошення масиву використовується оператор array. Онпозволяет задавати значення ключів. Також існує інший спосіб ініціалізації масивів, при якому PHP «самостійно» додає індекси елементів:

Вчимося літати вище: PHP функції роботи з масивами

У даному прикладі ми використовували функцію var_dump(), яка не зовсім підходить для відображення масивів. Вона просто виводить значення і тип переданої їй змінної. Але часто інформація про тип може ускладнити обробку виведеного рядка. Тому в PHP є кілька спеціалізованих функцій. Для виведення значень масиву застосовуються print_r():

Вчимося літати вище: PHP функції роботи з масивами

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

«;
print_r($ar1);
?>

Вчимося літати вище: PHP функції роботи з масивами

Маніпуляції з рядками

Розглянемо, які існують в PHP функції роботи з рядками. Головну з них ми вже використали сьогодні. Функція echo () служить для виводу рядків. Тепер розглянемо кілька інших. Виводимо фразу на екран за допомогою функції strlen() дізнаємося, скільки в ній символів:

У фразі «.strlen($str1).» символів»;
?>

Вчимося літати вище: PHP функції роботи з масивами

За допомогою функції md5() хэшируем рядок. Вона стане в нагоді для шифрування даних, що вводяться в різні форми:

«.md5($str1);
?>

Вчимося літати вище: PHP функції роботи з масивами

Перетасовуємо всі символи фрази у випадковому порядку. Для цього використовуємо функцію str_shuffle():

«.str_shuffle($str1);
?>

Вчимося літати вище: PHP функції роботи з масивами

Це всього лише кілька функцій PHP, призначених для роботи з рядковими даними. Насправді їх набагато більше, і для їх демонстрації знадобилася б окрема велика стаття. А в цьому матеріалі я навів лише деякі з них, щоб показати вам, як легко «літати» на PHP Вчимося літати вище: PHP функції роботи з масивами .

Маніпулюємо файлами

Щось ми «дрібно» літаємо! Давайте піднімемося ще вище, і розглянемо, які існують в PHP функції роботи з файлами. А краще розглянемо поетапно весь цикл операцій з файлами: від створення до зчитування.

Перед тим, як здійснювати будь-які дії, потрібно відкрити файл. Для цього використовується функція fopen(). В якості першого параметра вона приймає ім’я файлу або шлях до нього. Значення другого аргументу ми встановлюємо режими доступу до файлу. У своїх прикладах ми задіємо два режиму:

«r» — відкриває файл для читання, шлях до якого вказаний у першому аргументі. Або в поточній директорії, якщо шлях не вказаний.

«w» — відкриває файл для запису даних у його початок. Якщо файл з вказаним ім’ям немає, то він буде створений.

Реалізуємо все вищесказане:

Але в результаті ми отримали попередження про те, що файл f1.txt не знайдений.

Вчимося літати вище: PHP функції роботи з масивами

Тому використовуємо більш універсальний модифікатор доступу w+, який дозволяє здійснювати читання і запис. А також створює файл, якщо його немає. Тепер занесемо дані в файл за допомогою функції fwrite():

Для отримання дати ми скористалися функцією date(), а потім записали повернуту нею рядок у файл.

Вчимося літати вище: PHP функції роботи з масивами

І тепер виводимо рядок на екран. Для цього використовуємо функцію fgets(), яка зчитує рядок (або файл) до кінця.

Вчимося літати вище: PHP функції роботи з масивами

Якщо ви помітили, то я поміняв ідентифікатор доступу на «r», оскільки «w+» після закриття поточного сеансу і при зверненні до файлу в черговий раз повністю перезаписує або стирає його вміст. Загалом, тут потрібно «літати» акуратніше Вчимося літати вище: PHP функції роботи з масивами .

Ну, і наостанок наведу вам приклад, здатний зняти напругу після короткого екскурсу в можливості PHP:

У підсумку отримуємо результат, аналогічний попередньому. На цьому все. До таких захоплюючих польотів з PHP!