Создание и поисковое продвижение сайтов в Москве www.htaccess.moscow

8 (495)

744-67-74

[contact-form-7 id="230" title="Звонок"]
  • О компании
  • Услуги
  • Предложение
  • Акции
  • Контакты

Наши предложения по аренде сайтов >>>>>

Управление файлами и каталогами

Под управлением файлами и каталогами в PHP подразумеваются такие операции как:

  • Создание/удаление
  • Копирование/перемещение
  • Переименование
  • Изменение аттрибутов
  • Чтение содержимого каталога

Копирование файлов производится с помощью функции copy(). Функция имеет всего 2 параметра — имя исходного файла и имя конечного файла. Функция возвращает TRUE, если копирование прошло успешно, и FALSE если произошла ошибка. Если конечный файл уже существует — он будет перезаписан и функция вернёт TRUE. При использовании copy() на Windows-платформе есть особенность: если скопировать файл нулевого размера, то файл успешно скопируется, но copy() вернёт FALSE.

Пример копирования файла:

<?php

    $source = 'readme.txt';
    $dest = 'readme_copy.txt';

    if(!copy($source, $dest)) {
        echo "Ошибка копирования файла $source...<br />\n";
    }
?>

Обратите внимание на конструкцию «<br />\n» в конце строки с ошибкой. Этот простой приём позволяет получать читаемый вид выводимого текста независимо от того куда текст выводится — в консоль отладчика или в браузер. Очень удобно на этапе отладки скрипта.

Более сложный процесс — перемещение файла. Для выполнения перемещения служит функция rename(). Как и предыдущая функция, rename() принимает всего 2 агрумента — старое и новое имя файла. Если пути старого и нового файлов одинаковые — файл просто переименуется, а если разные — будет перемещен но повому пути и переименован.

Пример переменования и перемещения файла:

<?php

    $number = 123;

    $source = 'readme.txt';
    $dest = "./backups/readme_$number.txt";

    if(!rename($source, $dest)) {
        echo "Ошибка перемещения файла $source...<br />\n";
    }
?>

В этом примере исходный файл readme.txt перемещается в подкаталог backups и переименовывается в readme_123.txt.

Удалить существующий файл можно с помощью функции unlink(). Файловая система Unix позволяет создавать жесткие ссылки на существуюие файлы. Ссылка похожа на ярлыки Windows, но в Unix нельзя удалить исходный файл, пока на него есть жесткие ссылки. Функция unlink() удаляет вашу ссылку на файл, а если ссылок больше нет — удаляет его.

<?php

    $file = "./backups/readme_123.txt";

    if(!unlink($file)) {
        echo "Ошибка удаления файла $file...<br />\n";
    }
?>

Для удаления каталогов служит другая функция — rmdir(). Она принимает единственный параметр — имя каталога, который нужно удалить. Удаляемый каталог должен быть пуст, иначе операция завершится с ошибкой. Если каталог успешно удалён — функция вернёт TRUE, в противном случае — FALSE.

<?php

    $directory = "./backups";

    if(!rmdir($directory)) {
        echo "Ошибка удаления каталога $directory...<br />\n";
    }
?>

Отдельной функции для создания файлов в PHP нет. Все функции, позволяющие создать файл, выполняют и ряд других операций, но об этом мы поговорим в следующем уроке.

Для создания каталога в PHP применяется функция mkdir(). Функция получает 1 параметр — имя создаваемого каталога. Если каталог успешно создан — функция вернёт TRUE, а при ошибке — FALSE.

<?php

    $directory = "./backups";

    if(!mkdir($directory)) {
        echo "Ошибка создания каталога $directory...<br />\n";
    }
?>

Дополнительные функции

В PHP есть ряд функций, существенно помогающих в работе. Список функций с кратким описанием приведён в таблице.

Функция Описание
string basename ( $path [, $ext] ) Извлекает из полного пути $path только имя файла. Если указано расширение $ext — оно обрезается.

<?php
    $full_path = "/full/path/to/myfile.txt";
    echo basename($full_path);
    // выводит "myfile.txt"
    echo basename($full_path, '.ext');
    // выводит "myfile"
?>
string dirname ( $path ) Извлекает из полного пути $path только путь к файлу (без имени и расширения)

<?php
    $full_path = "/full/path/to/myfile.txt";
    echo dirname($full_path);
    // выводит "/full/path/to"
?>
bool file_exists ( $filename ) Проверяет, существует ли файл или каталог $filename. Функция возвращает TRUE, когда файл или каталог существует и доступен.

<?php
    $filename = "/full/path/to/myfile.txt";
    if(file_exists($filename))
        echo 'Файл существует';
    else
        echo 'Файл не существует';
?>
int fileatime ( $filename ) Возвращает дату и время последнего обращения к файлу
int filectime ( $filename ) Возвращает дату и время последнего изменения файла
int filesize ( $filename ) Возвращает размер файла в байтах
string filetype ( $filename ) Возвращает тип файла. Может возвращать сделующие значения: fifo, char, dir, block, link, file, unknown.
bool is_dir ( $filename ) Проверяет, является ли $filename каталогом
bool is_file ( $filename ) Проверяет, является ли $filename файлом
bool is_uploaded_file ( $filename ) Проверяет, является ли $filename файлом, загруженным на сервер через веб-форму.
<?php
    $filename = "/full/path/to/myfile.txt";

if (file_exists($filename)) {
    echo "Последнее обращение: " .
            date("F d Y H:i:s.", fileatime($filename));
    echo "Последнее изменение: " .
            date("F d Y H:i:s.", filectime($filename));
    echo 'Размер: ' . filesize($filename) . ' байт';
    echo 'Тип объекта: ' . filetype($filename);

}
?>
mixed pathinfo ( $path [, $options] ) Возвращает строку или массив строк, содержащий части пути $path (имя каталога, имя файла, расширение)

<?php
    $filename = "/full/path/to/myfile.txt";
    $parts = pathinfo($filename);

    echo $parts['dirname'], "\n";
    echo $parts['basename'], "\n";
    echo $parts['extension'], "\n";
    echo $parts['filename'], "\n";

    // получим на выходе
    //  /full/path/to
    //  myfile.txt
    //  txt
    //  myfile
?>
string realpath ( $path ) Преобразует относительный путь к файлу в реальный полный путь на сервере. Все символические ссылки так же преобразуются в реальные имена каталогов и файлов.

<?php
    echo realpath('.') . "./myfile.txt";
    // получим
    // /full/path/to/myfile.txt
?>
string tempnam ( $dir, $prefix ) Создаёт в каталоге $dir временный файл со случайным именем, начинающимся с $prefix. Если параметры не заданы — будет создан временный файл в глобальном временном каталоге с полностью случайным именем. Созданный файл сохраняется после завершения работы скрипта и закрытия файла.

<?php
    $temp_name = tempnam ($dir, $prefix);
    echo $temp_name;
    unlink($temp_name);
?>
resource tmpfile ( void ) Создаёт в системном временном каталоге временный файл со случайным именем. Созданный файл удаляется немедленно после закрытия.

<?php
    $temp_file = tmpfile();
    fwrite($temp, "=пишем в файл...=");
    fseek($temp, 0);
    echo fread($temp, 1024);
    // выводится
    // =пишем в файл...=
    fclose($temp); // закрываем и удаляем файл
?>

Функции работы с данными внутри файла мы рассмотрим в следующем уроке.

В таблице приведены не все функции, используемые при работе с файлами. Полный список вы сможете найти в документации на официальном сайте.

Поиск файлов и каталогов

Для поиска файлов в каталогах сервера используется несколько функций: glob(), fnmatch() и функции работы с каталогами (opendir(), readdir(), rewinddir(), closedir()).

Функция opendir() открывает указанный каталог и устанавливает внутренний указатель на первый файл. Функция возвращает так называемый «handle» (читается «хэндл») или «указатель». Этот указатель передаётся всем последующим функциям при работе с данным каталогом.

Функция readdir() возвращает имя текущего файла в каталоге и перемещает внутренний указатель на следующий файл. Если последний файл уже был прочитан — функция вернёт FALSE. Функция rewinddir() сбрасывает внутренний указатель на первый файл в каталоге. Функция closedir() закрывает ранее открытый каталог и освобождает всеи используемые ресурсы.

Функция fnmatch($pattern, $filename) проверяет, соответствует ли имя файла $filename маске $pattern.

Пример поиска файла по шаблону:

<?php
    $dir = "./backups/";
    // проверяем, что $dir - каталог
    if (is_dir($dir)) {
        // открываем каталог
        if ($dh = opendir($dir)) {
            // читаем и выводим все элементы
            // от первого до последнего
            while (($file = readdir($dh)) !== false) {
                if(fnmatch('myfile_*.txt', $file))
                    echo 'Резервная копия: ';

                echo "$file : " .
                     filetype($dir . $file) . "<br />\n";

            }
            // закрываем каталог
            closedir($dh);
        }
    }
?>

Функция glob( $pattern ) возвращает массив файлов и каталогов, соответствующих маске $pattern. Если произошла ошибка или ничего не найдено — функция вернёт FALSE.

Пример:

<?php
    foreach (glob("./backups/*.txt") as $filename) {
        echo "$filename : " . filesize($filename) . " байт\n";
    }
?>

Рассмотренных в этом уроке функций достаточно для решения большинства практических задач. Необходимость использования средств управления файлами возникает практически в каждом среднем и крупном проекте. Чаще всего упомянутые функции используются для работы с файловыми архивами, фото- и видеоальбомами, а так же при загрузке пользователями файлов на сервер.

На сегодняшний день большинство частных лиц, а также владельцев крупных предприятий заинтересованы в качественных услугах, которые оказываются опытным штатом специалистов. Если же вас интересует надежный и эффективный монтаж отопления, который будет выполнен грамотным штатом специалистов, отлично разбирающимися в данной сфере, тогда мы рады вам помочь. Наша организация на протяжении длительного периода времени оказывает качественный монтаж отопления и готова выполнить различные ряд услуг, связанных с любыми системами отопления. Мы предоставляем возможность заказать сборку котельной от опытного штата специалистов. Так как содержим грамотный штат мастеров, отлично разбирающийся в данной сфере. Наши сотрудники готовы предоставить качественную установку водоснабжения, а также выполнять монтажные работы, полностью соответствующие индивидуальным пожеланиям. Наша известная Академия-строительства.Москва оказывает ряд преимущественных предложений для каждого заинтересованного потребителя. Поэтому при необходимости любой заинтересованный клиент сможет заказать ряд профессиональных услуг от грамотного штат специалистов. Если же вы решили обратиться в нашу компанию за получением сборки котельной от высококвалифицированных мастеров своего дела, тогда мы поможем вам и в этом. Установка водоснабжения, а также любые другие монтажные работы выполняются от профессионалов своего дела. Мы предоставляем возможность реализовать задуманное в реальность в кратчайшие сроки. При этом не затрачивая внушительных сумм финансовой среды за весь процесс. Благодаря тому, что наша компания предоставляет сочетание расценок и гарантийного качества, нам доверяют многие. Стоимость на выполняемые услуги может варьироваться в зависимости от особых пожеланий клиентов, объема рабочих действий, материалов, и других ключевых моментов. Но несмотря на вышеуказанные факторы цена, как правило, устраивает любого нашего потенциального потребителя, и обеспечивает возможность реализовать задуманное в реальность кратчайшие сроки.
Ремонт квартир, загородных домов, кровля, фундаменты, заборы, ограждения, автономная газификация, частная канализация, отделка фасадов, системы водоснабжения от колодца и скважины, профессиональные современные котельные для частных домов и предприятий.
Для того чтобы системы отопления работали с полной отдачей и потребляли немного топлива, следует регулярно проводить их техническое обслуживание. Прорыв трубы централизованного или автономного отопления может не только привести к снижению температуры в доме, но и к аварийной ситуации.Своевременная замена старых труб отопления и радиаторов позволит создать комфортные и безопасные условия в доме, гарантирует защиту от материальных потерь. Опытные специалисты готовы провести ремонт систем отопления любого типа, подобрав для замены старых элементов системы новые комплектующие по лучшим ценам. Все ремонтные работы проводятся в установленный в договоре срок, на проведенные ремонтные работы компания дает гарантию качества. Для того чтобы жизнь за городом на дачном участке была более комфортной, необходимо создать систему постоянного водоснабжения, которая обеспечит владельцев дачного участка качественной питьевой водой. Только в этом случае жизнь на загородном участке станет действительно комфортной и безопасной. Вода на даче необходима не только для приготовления пищи, питья и водных процедур, но и для полива растений. Иначе смысл обустройства такого участка полностью утрачивается. Использование газа для отопления частного дома требует технологически правильной установки котельного оборудования. Котельная в частном доме может находиться как в жилых помещениях, так в специально оборудованном для этого месте. Обычно под нее отводится цокольный или подвальный этаж, так как это позволяет экономно использовать трубы, сокращая расстояние от места распределения подачи газа к месту его потребления. Обустройство котельной должно соответствовать всем требованиям безопасности, предусмотренным при эксплуатации газового оборудования. Кроме газовой котельной используются котельные, работающие на твердом топливе. При их обустройстве необходимо учитывать места безопасного хранения угля, пеллет, торфа, дров. Также требуется профессиональная установка котлов, счетчиков и разводки. Наша компания готова разработать индивидуальный проект любой котельной частного дома, который учтет все требования владельцев жилого строения и обеспечит бесперебойную работу отопительных систем и системы горячего водоснабжения.
Системы: отопления, водоснабжения, канализации. Под ключ.
Строительная компания
Холдинговая компания СпецСтройАльянс
ООО “ДИЗАЙН ПРЕСТИЖ” предлагает теплотрассы для частного дома в Москве по недорогой стоимости. У нас можно купить современные трубопроводы и заказать прокладку теплотрассы. ТЕПЛОТРАССЫ ДЛЯ ОТОПЛЕНИЯ ЧАСТНОГО ДОМА. В частных домах ресурс тепла зачастую находится вне дома. Для обеспечения высокоэффективной системы обогрева необходимо доставить носитель тепла в помещение, тогда теплопотери будут минимальными. В независимости от места, где прокладывается теплотрасса – на земле или под почвой, нужно позаботиться о выборе тpубопровода из оптимального материала. Также понадобится обеспечить качественную теплоизоляцию. ООО “ДИЗАЙН ПРЕСТИЖ” предлагает современные гибкие тpубы теплоизолированные трубы, теплотрассы различных маркировок. Наша компания является прямым дилером трубопроводов от производителя Термафлекс. У нас Вы не только можете купить Флексален, но и заказать быстрый и качественный монтаж. Наши специалисты выполняют наземную и подземную прокладку теплотрасс практически на любой территории. ПОЧЕМУ теплотрассы ДЛЯ ЧАСТНОГО дома ФЛЕКСАЛЕН? Заранее термоизолированные трубопроводы теплоизолированные трубы, теплотрассы являются относительно новым продуктом в области теплоизоляции. Они представляют из себя готовую теплотрассу, и сочетают в себе высокие теххарактеристики полимерных тpубопроводных систем и высокого качества термоизоляции. Благодаря надежному и быстрому монтажу, долговечности тpуб Флексален, предизолированные тpубопроводы особенно интересны при прокладывании внутриквартальных и наружных сетей любого водоснабжения на территориях частных домов и коттеджных поселках – теплового и холодного. Теплотрассы можно прокладывать между постройками, с целью восстановления и обустройства городских теплосетей, также транспортирования производственных и пищевых жидкостей, не только воды. Но и других жидких субстанций. Флексален гибкие, предизолированные, благодаря чему возможна их укладка в трассу, протяженность которой до 300 метров и любой конфигурации. Чтобы произвести монтаж, не потребуется использование специального устройства канала, компенсаторов и соединений. КАК ПРОКЛАДЫВАЮТ ТPУБЫ ДЛЯ ЧАСТНОГО ДOМА СПЕЦИАЛИСТЫ НАШЕЙ КОМПАНИИ. Прокладывание теплотрассы в частном дом овладении выполняется поэтапно. Сначала нужно купить трубы для частного дома . Перед закладкой тpубопровода в почву, нужно произвести подготовку, определяющую основные характеристики будущей теплотрассы. Прокладка проводится следующим образом: Проектируется система. Сначала обследуется здание для установления потерь тепла. Затем осуществляется расчет распределения тепла от обогревателей. Это необходимо для правильного размещения отопительных приборов. Подбирается конфигурация оснащения. Определяется оптимальная окружность коммуникационных сетей, температура теплоносителя. Находится места закрепления распределительных узлов. Документируется проект и сертифицируется, подсчитывается смета. Эти и другие работы выполнят работники ООО “ДИЗАЙН ПРЕСТИЖ“. Если Вам необходимо купить трубы теплоизолированные трубы, теплотрассы или заказать проклдаку теплотрассы. Обращайтесь. Мы всегда к Вашим услугам!
Прокладка, ремонт и монтаж тепловых сетей, теплотрасс под ключ. Для частных домов и предприятий.
  • Аудит сайтов
  • Продвижение сайтов
  • Портфолио
  • Реклама и маркетинг в интернете
  • Контекстная реклама
  • Оптимизация сайтов
  • Увеличение продаж
  • Реклама на тематических сайтах
  • Продвижение в социальных сетях
  • Анализ и аудит сайта
  • Создание сайта
  • Индивидуальная консультация

Статьи и новости

Как взломать сайт и как защитить сайт от взлома?
Как взломать сайт?
Что такое хешкрекинг?
Форумы
Другие новости
  • RSS © 1999-2020 «Дизайн-Престиж» Интернет-агенство.
  • Продвижение сайтов в Москве.
  • Facebook В контакте Twitter