🧱 Суть
PHP содержит большую стандартную библиотеку встроенных функций, которая позволяет работать со строками, массивами, файлами, датами, JSON, математикой и другими задачами без использования сторонних библиотек.
Например:
- проверить тип данных
- преобразовать строку
- отсортировать массив
- получить текущую дату
- прочитать файл
- декодировать JSON
Большинство повседневных задач уже решаются встроенными функциями.
📦 Проблема
Начинающие разработчики часто:
- пишут функции, которые уже есть в PHP
- не знают о существовании полезных функций
- используют сложные конструкции вместо готовых решений
Например:
Плохо:
$exists = false;
foreach ($users as $user) {
if ($user === 'Alex') {
$exists = true;
}
}Лучше:
$exists = in_array('Alex', $users);✅ Решение
Перед написанием собственной функции стоит проверить, существует ли аналог в стандартной библиотеке PHP.
Это делает код:
- короче
- понятнее
- быстрее
- надёжнее
💻 Код
Проверка типов
Проверить тип значения:
is_string($value);
is_int($value);
is_bool($value);
is_array($value);
is_object($value);
is_null($value);Проверить существование переменной:
isset($value);Проверить пустое значение:
empty($value);Проверить тип переменной:
gettype($value);Работа со строками
Длина строки:
strlen($text);Преобразовать регистр:
strtolower($text);
strtoupper($text);Удалить пробелы:
trim($text);Найти подстроку:
str_contains($text, 'php');Начинается ли строка с:
str_starts_with($text, 'Hello');Заканчивается ли строка на:
str_ends_with($text, '.php');Заменить текст:
str_replace('old', 'new', $text);Разделить строку:
explode(',', $text);Объединить массив:
implode(', ', $array);Работа с массивами
Количество элементов:
count($array);Проверить наличие элемента:
in_array('PHP', $array);Проверить существование ключа:
array_key_exists('id', $array);Получить ключи:
array_keys($array);Получить значения:
array_values($array);Объединить массивы:
array_merge($a, $b);Отфильтровать массив:
array_filter($array);Преобразовать элементы:
array_map(
fn($item) => strtoupper($item),
$array
);Найти элемент:
array_search('PHP', $array);Сортировка
По возрастанию:
sort($array);По убыванию:
rsort($array);Ассоциативный массив по ключу:
ksort($array);По значениям:
asort($array);Работа с числами
Округление:
round($number);Минимум:
min($numbers);Максимум:
max($numbers);Абсолютное значение:
abs($number);Случайное число:
random_int(1, 100);Работа с файлами
Проверить существование:
file_exists($path);Прочитать файл:
file_get_contents($path);Записать файл:
file_put_contents(
$path,
$content
);Удалить файл:
unlink($path);Работа с JSON
Преобразовать массив в JSON:
json_encode($data);Преобразовать JSON в массив:
json_decode(
$json,
true
);Работа с датой
Текущая дата:
date('Y-m-d');Текущее время:
time();Создать объект DateTime:
new DateTime();Работа с HTTP
Получить IP:
$_SERVER['REMOTE_ADDR'];Получить метод запроса:
$_SERVER['REQUEST_METHOD'];Перенаправить пользователя:
header('Location: /');
exit;Работа с переменными
Удалить переменную:
unset($value);Преобразовать тип:
intval($value);
floatval($value);
boolval($value);
strval($value);Отладка
Вывести содержимое:
var_dump($value);Красиво вывести массив:
print_r($value);Остановить выполнение:
die();или
exit();Работа с функциями
Проверить существование функции:
function_exists('trim');Проверить существование класса:
class_exists(User::class);Проверить существование метода:
method_exists($user, 'save');Частые ошибки
Использовать count() без проверки типа
Плохо:
count($value);Если $value не массив, возможны ошибки.
Лучше:
if (is_array($value)) {
count($value);
}Использовать rand() вместо random_int()
Плохо:
rand(1, 100);Лучше:
random_int(1, 100);random_int() обеспечивает более качественную генерацию случайных чисел.
Использовать print_r() в рабочем коде
Функции:
print_r();
var_dump();подходят только для отладки.
Изобретать уже существующие функции
Например, вручную искать элемент в массиве через цикл вместо:
in_array();или писать собственную функцию объединения строк вместо:
implode();🎯 Вывод
- PHP содержит богатую стандартную библиотеку встроенных функций
- Перед написанием собственной функции стоит проверить существующие аналоги
- Наиболее востребованы функции для работы со строками, массивами, файлами, JSON и датами
- Для проверки типов используются
is_*()иisset() - Для отладки удобно использовать
var_dump()иprint_r() - Использование встроенных функций делает код короче, понятнее и надёжнее
🔗 Связано
- PHP. Типы данных и приведение типов
- PHP. Массивы: работа, перебор и полезные функции
- PHP. Строки: основные функции и особенности
- PHP. Работа с JSON
- PHP. Работа с файлами и файловой системой
- PHP. Работа с датой и временем (DateTime)
- PHP. Регулярные выражения (preg_*)
- PHP. Функции и анонимные функции (Closure)