- Работа с файловой системой в Битрикс D7
- IO\File
- IO\Directory
- IO\Path
- Создание и редактирование файла
- Контекстная панель
- Редактировать как текст
- Редактировать как PHP
- Редактировать как HTML
- Закладка «Редактирование»
- Закладка «Свойства»
- Закладка «Меню»
- Пример создания нового файла
- Публичный раздел
- Смотрите также
- Конструктор File
- Параметры
- Примеры
- Пользовательские комментарии
- Bitrix php создать файл
- Начальные требования
- У нас часто спрашивают, сколько нужно заплатить
- Баллы опыта
- Тесты и сертификат
- Комментарии к урокам
- Для преподавания офлайн
- Если нет интернета
- Как проходить учебный курс?
Работа с файловой системой в Битрикс D7
За работу с файловой системой в Битрикс D7 отвечают классы пространства Bitrix\Main\IO.
use Bitrix\Main\IO, Bitrix\Main\Application;
IO\File
$file = new IO\File(Application::getDocumentRoot() . "/file.txt");
$isExist = $file->isExists(); // true, если файл существует $dir = $file->getDirectory(); // Директория файла в виде объекта IO\Directory $dir = $file->getDirectoryName(); // Директория файла $fileName = $file->getName(); // Имя файла $fileExt = $file->getExtension(); // Расширение файла $fileSize = $file->getSize(); // Размер файла в байтах $contentType = $file->getContentType(); // Content-type $createdAt = $file->getCreationTime(); // Дата создания, timestamp $accessAt = $file->getLastAccessTime(); // Дата последнего доступа, timestamp $modifiedAt = $file->getModificationTime(); // Дата модификации, timestamp $perms = $file->getPermissions(); // Права на файл в виде десятичного числа $perms = substr(sprintf('%o', $file->getPermissions()), -3); // Права на файл в виде восьмеричного числа
$content = $file->getContents(); // Получить содержание файла $file->putContents("data"); // Записать содержимое в файл с заменой $file->putContents("data", IO\File::APPEND); // Дописать содержимое в конец файла $file->readFile(); // Вывести содержимое файла $file->rename(Application::getDocumentRoot() . "/new_file.txt"); // Переместить/переименовать файл $file->delete(); // Удалить файл
У некоторых методов есть статические варианты:
$path = Application::getDocumentRoot() . "/another_file.txt"; IO\File::isFileExists($path); // Проверить существование файла IO\File::getFileContents($path); // Получить содержание файла IO\File::putFileContents($path, "data"); // Записать содержимое в файл с заменой IO\File::putFileContents($path, "data", self::APPEND); // Дописать содержимое в конец файла IO\File::deleteFile($path); // Удалить файл
IO\Directory
$dir = new IO\Directory(Application::getDocumentRoot() . "/test/");
Если директории не существует, её можно создать:
$dir->create(); // Создаёт директорию с указанным в конструкторе путём
$isExist = $dir->isExists(); // true, если директория существует $createdAt = $dir->getCreationTime(); // Дата создания, timestamp $accessAt = $dir->getLastAccessTime(); // Дата последнего доступа, timestamp $modifiedAt = $dir->getModificationTime(); // Дата модификации, timestamp $perms = $dir->getPermissions(); // Права на директорию в виде десятичного числа $perms = substr(sprintf('%o', $dir->getPermissions()), -3); // Права на директорию в виде восьмеричного числа
Действия над директориями:
$childDir = $dir->createSubdirectory("child"); // Создает и возвращает вложенную директорию с указанным именем $dir->rename(Application::getDocumentRoot() . "/another_path/"); // Переместить/переименовать директорию $dir->delete(); // Удалить директорию
Получить массив файлов в директории:
$files = $dir->getChildren(); // Массив объектов IO\File
У некоторых методов есть статические варианты:
$path = Application::getDocumentRoot() . "/another_dir/"; IO\Directory::createDirectory($path); // Создать директорию IO\Directory::deleteDirectory($path); // Удалить директорию IO\Directory::isDirectoryExists($path); // Проверить существование
IO\Path
$path = Application::getDocumentRoot() . "/some_dir/some_file.ext"; $fileExt = IO\Path::getExtension($path); // Возвращает расширение файла $fileName = IO\Path::getName($path); // Возвращает имя файла $fileDir = IO\Path::getDirectory($path); // Возвращает директорию файла (полный путь)
Создание и редактирование файла
Для создания нового файла служит кнопка Добавить, расположенная на контекстной панели менеджера файлов. При создании файла откроется тот вид редактора, который задан в настройках модуля Управление структурой . Чтобы отредактировать существующий файл, необходимо воспользоваться пунктом Редактировать как меню действий необходимого файла. Доступно три режима редактирования файла:
- Редактировать как текст;
- Редактировать как PHP;
- Редактировать как HTML.
Контекстная панель
- Редактировать как текст — отображение текста файла, без включения PHP кода. Однако, в этом режиме отображаются все HTML-теги.
- Редактировать как PHP — редактирование исходного кода файла. Режим предназначен исключительно для использования разработчиками.
- Редактировать как HTML — редактирование документа в режиме встроенного визуального HTML-редактора, позволяющего форматировать текст аналогично Microsoft Word .
В зависимости от выбранного режима редактирования, форма редактирования может принимать разный вид.
Редактировать как текст
Поле | Описание |
---|---|
Шаблон | Шаблон, на основе которого будет создан файл. Например, Стандартная страница, Включаемая область для страницы или Включаемая область для раздела. |
Редактировать как PHP
Поле | Описание |
---|---|
Шаблон | Шаблон, на основе которого будет создан файл. Например, Стандартная страница, Включаемая область для страницы или Включаемая область для раздела. |
Редактировать как HTML
Закладка «Редактирование»
Поле | Описание |
---|---|
Шаблон | Шаблон, на основе которого будет создан файл. Например, Стандартная страница, Включаемая область для страницы или Включаемая область для раздела. |
Примечание: Процесс создания и редактирования страницы с помощью визуального редактора подробно описан на странице визуального HTML-редактора.
Закладка «Свойства»
Свойства страницы | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Данная секция предназначена для задания и редактирования значений свойств страницы, а также для управления значениями тегов, ключевыми словами (keywords) и описанием (description) страницы.
Примечание: Набор доступных для всех страниц свойств определяется на странице настроек модуля Управление структурой. Закладка «Меню»
Пример создания нового файла
Публичный разделПроцедура создания нового файла в публичной части сайта подробно описана в уроках Создание новых страниц и разделов и Создание новых страниц и разделов в интерфейсе до версии 9.5. Смотрите такжеКонструктор FileНестатический метод вызывается при создании экземпляра класса и позволяет в нем произвести при создании объекта какие-то действия. ПараметрыПримеры$file=new \Bitrix\Main\IO\File($path, $siteId = null); Теперь с файлом, путь до которого был передан в конструктор класса можно сделать следующее: Открыть файл. Параметром указывается тип доступа, который запрашивается у потока. Этот параметр аналогичен функции php fopen. Проверить его существование. Записать данные в файл аналогично статическому методу putFileContents. $file->putContents($data, $flags=self::REWRITE) Понять, доступен ли файл для записи. Понять, доступен ли файл для чтения. Прочесть файл и записать его в буфер вывода. Получить количество прочитанных из файла байт. Получить дату создания файла. Получить время последнего доступа к файлу. Получить время последнего изменения файла. Установить на файл права на запись Узнать права доступа к файлу Получить тип контента файла. Пользовательские комментарииМы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы. Для этого нужно всего лишь авторизоваться на сайте Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь. Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы. Bitrix php создать файлКурс предназначен для базовой подготовки администраторов сайтов, созданных на «1С-Битрикс: Управление сайтом». Изучив курс, вы освоите основные методы администрирования системы, а также пополните знания по темам, изученным в курсе Контент-менеджер. Если вы добросовестно изучите курс, то научитесь:
Если вам предстоит самостоятельная установка системы или перенос сайта на хостинг, то без курса Установка и настройка Курс Установка и настройка предназначен для специалистов устанавливающих «1С-Битрикс: Управление сайтом» или «Битрикс24 в коробке». Начальные требованияНеобходимый минимум знаний для изучения курса:
Неплохо было бы иметь базовые навыки установки и администрирования *nix-систем и основы Баз Данных. У нас часто спрашивают, сколько нужно заплатитьКурс полностью бесплатен. Изучение курса, прохождение итоговых тестов и получение сертификатов — ничего из этого оплачивать не нужно. Ещё у нас есть Академия 1С-Битрикс, где можно обучиться на платной основе на курсах нашей компании либо наших партнёров. Баллы опытаВ конце каждого урока есть кнопка Прочитано! . При клике на неё в Вашу итоговую таблицу опыта добавляется то количество баллов, которое указано в прочитанном После нажатия кнопки Прочитано! появится уроке. Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, добавляем новые уроки. Поэтому итоговое количество баллов курса и количество набранных вами баллов могут различаться между собой. Набранные вами баллы, в отличие от суммы баллов курса, не пересчитываются. Не переживайте! Тесты и сертификатПосле изучения курса пройдите тесты на сертификацию. При успешной сдаче последовательности тестов на странице Моё обучение вы увидите результат обучения и там же — ваш сертификат в формате PDF. Иконка успешно сданного вами курса отображается в вашем профиле на Freelance, если вы укажите ссылку на ваш профиль на сайте компании 1С-Битрикс. Также Вы можете поделиться ссылкой на страницу со своими сертификатами. Для этого на странице Моё обучение отметьте опцию Разрешить публичный доступ к резюме студента Комментарии к урокам
Для преподавания офлайнЕсли данный курс берётся в качестве основы для офлайнового преподавания, то рекомендуемая продолжительность: 3 дня (24 академических часа). Если нет интернетаСкачать материалы курса в формате EPUB. Файлы формата EPUB Чем открыть файл на iPhone: Windows: iOS Linux: Как проходить учебный курс? |