LibCode»Блог

LibCode — это библиотека кода и знаний для разработчиков, где каждый найдет полезные ресурсы, уроки и инструменты для создания и совершенствования своих проектов.

MySQL | PHP | Python | C++ | JavaScript

Создано при поддержке GigaChat.

PHP: Работа с почтой и уведомлениями

Что мы узнаем:
  • Как отправлять электронные письма с помощью PHP.
  • Использование SMTP для безопасной отправки писем.
  • Примеры отправки писем с прикрепленными файлами.

Отправка электронных писем


В PHP для отправки писем используется функция mail(). Пример:
// Отправка простого письма
$to = "recipient@example.com";
$subject = "Тема письма";
$message = "Привет! Это письмо отправлено с помощью PHP.";

mail($to, $subject, $message);

Использование SMTP


Для безопасной отправки писем рекомендуется использовать SMTP. Пример с библиотекой PHPMailer:
// Подключение библиотеки PHPMailer
require 'PHPMailer/src/PHPMailer.php';
require 'PHPMailer/src/SMTP.php';

// Создание объекта PHPMailer
$mail = new PHPMailer(true);

try {
    // Настройки SMTP
    $mail->isSMTP();
    $mail->Host = 'smtp.example.com';
    $mail->SMTPAuth = true;
    $mail->Username = 'sender@example.com';
    $mail->Password = 'password';
    $mail->Port = 587;

    // Отправка письма
   
...

PHP: Оптимизация и кэширование

Что мы узнаем:
  • Как ускорить работу PHP-приложений.
  • Использование кэширования для повышения производительности.
  • Примеры оптимизации и кэширования.

Что такое оптимизация?


Оптимизация — это процесс улучшения производительности и скорости работы приложения. Цель оптимизации — снизить нагрузку на сервер и увеличить скорость отклика.

Основные приёмы оптимизации


  • Минификация и сжатие: Минифицируйте CSS, JavaScript и HTML, сжимайте изображения.
  • Использование CDN: Распределяйте статические ресурсы через Content Delivery Network.
  • Оптимизация базы данных: Индексация, денормализация, кэширование запросов.
  • Отложенная загрузка: Используйте lazy loading для изображений и тяжелых компонентов.

Кэширование в PHP


Кэширование — это временное хранение данных для уменьшения нагрузки на сервер. Основные виды кэширования:

Файловое кэширование: Хранение данных в файлах на диске:
// Файловое кэширование
$cache_file = 'cache/data.cache';

if (file_exists($cache_file) && (time() - filemtime($cache_file) <
...

PHP: Веб-сервисы и API

Что мы узнаем:
  • Что такое веб-сервисы и API.
  • Как создавать и использовать API в PHP.
  • Примеры использования API.

Что такое веб-сервисы и API?


Веб-сервисы — это программы, предоставляемые через Интернет для использования другими приложениями. API (Application Programming Interface) — это интерфейс, позволяющий взаимодействовать с веб-сервисом.

Создание простейшего API на PHP


Пример простого API, возвращающего список пользователей:
<?php
// Подключение к базе данных
$mysqli = new mysqli("localhost", "user", "password", "database");

// Получение данных
$sql = "SELECT * FROM users";
$result = $mysqli->query($sql);

// Формирование ответа
$users = [];
while ($row = $result->fetch_assoc()) {
    $users[] = $row;
}

// Вывод в формате JSON
header('Content-Type: application/json');
echo json_encode(['users' => $users]);

Использование API


Пример использования API с помощью cURL:
<?php
// URL API
$url = 'https://danfa.net/api/';

// Инициализация cURL
$curl =
...

PHP: Обработка ошибок и отладка

Что мы узнаем:
  • Как ловить и обрабатывать ошибки в PHP.
  • Принципы отладки и трассировки ошибок.
  • Использование функций для работы с ошибками.

Обработка ошибок


PHP предоставляет несколько механизмов для обработки ошибок:

Функция trigger_error()
Используется для генерации пользовательских предупреждений и ошибок:
trigger_error("Ошибка обработки данных.", E_USER_WARNING);

Функция set_error_handler()
Позволяет зарегистрировать пользовательскую функцию для обработки ошибок:
function customErrorHandler($errno, $errstr) {
    echo "Ошибка: $errstr";
}

set_error_handler("customErrorHandler");

Отладка и трассировка ошибок


Для отладки и отслеживания ошибок в PHP можно использовать

Функция debug_backtrace()
Возвращает массив с информацией о вызовах функций:
$backtrace = debug_backtrace();
print_r($backtrace);

Функция error_log()
Записывает сообщение об ошибке в журнал:
error_log("Ошибка: Невозможно выполнить запрос.");

Практическое задание


Создайте PHP-скр...

PHP: Работа с файлами и каталогами

Что мы узнаем:
  • Как читать и записывать файлы.
  • Как работать с каталогами.
  • Примеры использования функций для работы с файлами.

Чтение файла


Функция file_get_contents() позволяет прочитать содержимое файла в строку. Пример:
// Чтение файла
$fileContent = file_get_contents('example.txt');
echo $fileContent;

Запись в файл


Функция file_put_contents() позволяет записать данные в файл. Пример:
// Запись в файл
$fileContent = "Привет, мир!";
file_put_contents('example.txt', $fileContent);

Работа с каталогами


Функция scandir() позволяет получить список файлов и каталогов в директории. Пример:
// Получение списка файлов в каталоге
$files = scandir('.');
print_r($files);

Создание каталога


Функция mkdir() позволяет создать новый каталог. Пример:
// Создание каталога
mkdir('new_folder');

Удаление файла


Функция unlink() позволяет удалить файл. Пример:
// Удаление файла
unlink('example.txt');

Практическое задание


Создайте PHP-скрипт,...