Path — класс для работы с путями в Битрикс D7

Внимание! Раздел находится в стадии разработки. Комментарии временно недоступны
Страницы: 1
RSS
Path — класс для работы с путями в Битрикс D7
\Bitrix\Main\IO\Path — класс для работы с путями в Битрикс D7

Работа с путями в файловой системе и веб-приложениях — одна из частых  задач при создании и администрировании сайтов на 1С-Битрикс. Опечатка в  пути к файлу, попытка использовать некорректные символы или неверное  представление относительных адресов могут приводить к различным ошибкам.  Чтобы максимально упростить эту задачу, в фреймворке Bitrix D7  существует специальный класс \Bitrix\Main\IO\Path, который содержит набор статических методов для валидации и удобных преобразований путей.
Этот код преобразует относительный путь к файлу с кириллицей и некорректными сегментами в безопасный абсолютный путь, нормализует его, проверяет валидность, извлекает имя и расширение файла, а также генерирует корректную URI-ссылку для веб-доступа.
Код
<?php
// Подключаем ядро Битрикс (требуется для работы с классами D7)
require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php');

use Bitrix\Main\IO\Path;

// Пример: формируем безопасный путь к файлу, нормализуем его, проверяем валидность и получаем имя и расширение
$relativePath = "upload/фото из отпуска/../фото/весна 2025!.jpg";
$absolutePath = Path::convertRelativeToAbsolute($relativePath);
$normalizedPath = Path::normalize($absolutePath);

if (Path::validate($normalizedPath)) {
    $fileName = Path::getName($normalizedPath);
    $fileExt = Path::getExtension($normalizedPath);
    $safeUri = Path::convertLogicalToUri($normalizedPath);

    echo "Абсолютный путь: " . $normalizedPath . "<br>";
    echo "Имя файла: " . $fileName . "<br>";
    echo "Расширение: " . $fileExt . "<br>";
    echo "Ссылка (URI): " . $safeUri . "<br>";
} else {
    echo "Путь содержит недопустимые символы.";
}

require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/epilog_after.php');
Страницы: 1

Стоимость услуг по разработке и сопровождению сайтов на 1C-Битрикс

Техническая поддержка

выполняется с сайтами на основе любых CMS

от 5 000 рублей
Оптимизация производительности действующих интернет-проектов, наполнение и сопровождение, полная техническая поддержка и продвижение в поисковых сетях.

* стоимость зависит от объема и сложности выполняемых работ, используемой CMS.

Перенос сайтов на «1С-Битрикс»

сайты на платформе «1С-Битрикс» — это удобство, надежность и высокая посещаемость

от 12 000 рублей
Перенос сайтов с любых CMS и статичных страниц на платформу «1С-Битрикс», с учетом дизайна, верстки и урл-адресов. С сохранением всей информации и структуры сайта.

* зависит от объема выполняемых работ.

Участие в проекте

привлечение в проект на part-time основе

от 30 000 рублей / неделя

Возможно участие в проекте на ежедневной основе, как разработчика. Занятость - до 20 часов в неделю
Минимальный срок - одна неделя.

* сумма фиксированная