Полюбите код! И он полюбит Вас!

Последние комментарии:

Марат : Для этого и делали! Рад, что помог! Приходите ещё! далее

2018-02-16 20:31:51



Виктор : Спасибо! Очень полезная статья. Нужно было очистить всю базу данных, далее

2018-02-16 20:30:13



Евгений : Спасибо за перевод sublime!!!! далее

2018-02-15 16:42:05



Марат : Вообще, после написания статьи - у них вышло обновление, может далее

2018-02-13 19:19:01



Сергей : Доброе время суток!После правки кода, капчи вообще нет! Ни старой, далее

2018-02-13 19:10:15



Это интересно:

Рейтинги страниц.

Вы здесь - Главная - PHP - массивы

Точки в массиве

Виртуальные директории удаление ячеек массива с точками

Начнём с предисловия, которое я вынужден написать! Это довольно странная тема, потому, что сформировать ключевые слова практически было невозможно и соответствующий сервис мне не помог! И насколько важна, и нужна данная тема - под вопросом! Но! Одно несомненно, что в изучении PHP – это полезная тема! И второе – какую бы вы задачку в php вы бы не решали – это приближает вас к новым знаниям! А как известно “знание – сила”!

В прошлый раз из разбирали одну из тем посвященных массивам!

И если вы посмотрите на отображение содержание папки, чтобы вы не ходили на другую страницу еще раз, то выведем содержание папки над которой мы будем периодически издеваться, то сделаем вывод данной папки здесь и сделаем другим цветом, чтобы это было понятно:

.

..

Elitsin-alkash.html

Gorbachev-goret-tebe-v-adu.doc

Gorbachev-predatel.html

Gorbachev-prodal-rodinu.txt

Gorbachev-razvalil-SSSR.php

И здесь мы видим, что две ячейки массива, который вывден на экран равны: 1 = “.” А второй = “..”.

Что это за две ячейки непонятные и что они делают у нас на экране!?

“.” и “...” - Это две виртуальные директории, которые имеются в каждом каталоге файловой системы. Они представляют текущий каталог и родительский каталог соответственно.

Мы решили сделать ещё вариант № 2

Вариант №1

Это конечно очень интересно! НО! Мне они не нужны в принципе и честно сказать они меня раздражают и поэтому мы сегодня удалим их! Чтобы мы эти виртуальные директории просто не видели!

Нам понадобятся несколько функций

Пример использования - array_values

Применяет фильтр к массиву, используя функцию обратного вызова.

И..

Пример использования array_filter

возвращает индексный массив, содержащий все значения массива input.

Давайте разберем предыдущий код, который выводит нам массив в виде строк:

Если видим два слеша, то это закомментировано и не будет отображаться на экране…

Мы взяли некую директорию, в которой нам нужно было просканировать файлы. И далее можем вывести список как массив, либо как список.

<?php

$dir = '/home/… '; #Указываем директорию, которую надо отобразить на экране

$file = scandir($dir); #Сканируем содержимое указанной директории

//print_r($file)."<br>"; #Выводим список на экран

foreach($file as $value) // вывод массива как список

{

echo "$value <br>\n";

}

?>

И далее создадим еще одну переменную и приравняем её к верхней переменной $file.

$arr = $file;

Далее нам нужно применить функции array_values и array_filter к новому массиву, пропустим её через функцию, произвольного названия $e, и вернем наш массив в полном составе, кроме той ячейки массива, в которой будет присутствовать точка –

return $e != "."

Полностью это будет выглядеть так:

$arr = array_values(array_filter($arr, function($e) { return $e != "."; }));

Но ведь у нас есть вторая ячейка и соответствующая строчка в которой присутствуют две точки! Нам нужно повторить предыдущую запись, изменив в фильтре одну точку на две.

$arr = array_values(array_filter($arr, function($e) { return $e != ".."; }));

И соединим все вместе и сделаем вывод:

<?php

$arr = $file;

$arr = array_values(array_filter($arr, function($e) { return $e != "."; }));// вывод массива без первой точки

$arr = array_values(array_filter($arr, function($e) { return $e != ".."; }));// вывод массива без второй точки

//var_dump($arr); // вывод массива без точек

foreach($arr as $value)

{

echo "$value <br>\n";

}

?>

Смотрим результат работы нашего скрипта:

Elitsin-alkash.html

Gorbachev-goret-tebe-v-adu.doc

Gorbachev-predatel.html

Gorbachev-prodal-rodinu.txt

Gorbachev-razvalil-SSSR.php

Скопировать коды.

Вариант №2

Мы решили написать код, который можем понять, если в первом варианте разобраться вообще невозможно! Плюс ко всему код получился невероятно длинный, для такой простой задачи, то вот мы решили сделать второй вариант.

Открываем папку - opendir.

Читаем папку – readdir.

Если папки не равны точкам, то выводим название… все просто и понятно…

<?php 

$handle = opendir('путь_до _папки');

while (false !== ($file = readdir($handle))) { 

    if ($file != "." && $file != "..") { 

        echo "$file\n<br>"; 

    } 

}

?>

Вот и всё, что я сегодня хотел вам рассказать!

Понравилась статья!? Не стесняйся – поделись ссылкой!

И!

Пожалуйста! Если вам не трудно - прокомментируйте то, что вы прочитали! Вам понравилось, или не понравилось! Напишите, какие мысли возникли у вас, и это бесплатно для вас, но очень ценно для нас!!! Всё, что вы здесь видите - это написано для вас! Никаким другим образом мы не можем понять вашу реакцию. Может, что-то стоит добавить или наоборот убрать. Либо, что-то стоило изменить...

P.S.

25 октября 2017

Мы запустили подписку на новости по емайлу, как только выходит новая статья, то будет отправлено сообщение на почту, что вышла новая статья!

Почему стоит подписаться на наши новости!?

Расскажу историю, вчера искал ответ на один из вопросов (конечно, я могу и сам написать, но чаще всего, вначале, ищу в интернете, может есть готовое решение…) и было множество вариантов, которые были описаны, но ни одного, с примерами! И мало того, что они предлагают решения, которые непонятно как реализовывать, особенно новичкам, у которых больше вопросов, чем ответов. Так они еще и не работают!

У нас же, на сайте – только рабочие проверенные скрипты! Полностью с описанием и с примерами! И реализовать может человек с нулевыми знаниями!

Мы есть здесь:

Проголосовать за статью!
  С 24 сентября мы запускаем новый скрипт в тестовом режиме (только свои скрипты)
  Вы можете проголосовать за понравившуюся статью.

  Еще никто не проголосовал
    


Просмотров 463

Друзья!

Для того, чтобы вы получили бесплатную информацию, мы потратили и время и деньги!

Мы существуем от кликов по рекламе!

Если вы не нашли подходящего блока объявлений, то вы еще можете помочь проекту!

Не стесняйтесь!

Даже самая маленькая сумма будет употреблена на продвижение и улучшение проекта!

Заранее благодарим Вас!

Оставить комментарий:

Для отображения аватара после отправки сообщения, необходимо быть зарегистрированным в Граватаре.



Комментарии

Комментариев пока нет.

* Обязательные поля
(Не публикуется)
 
Жирный Курсив Подчеркнутый Перечеркнутый Степень Индекс Код PHP Код Кавычки Вставить линию Вставить маркированный список Вставить нумерованный список Вставить ссылку Вставить e-mail Вставить изображение Вставить видео
 
Улыбка Печаль Удивление Смех Злость Язык Возмущение Ухмылка Подмигнуть Испуг Круто Скука Смущение Несерьёзно Шокирован
 
5000
Напишите слово марш наоборот.
 
(введите ответ)
 
Уведомлять о новых коментариях по почте.
 

Оставить комментарии через вконтакте

Все дела сделаны!

Теперь можно и поиграть!

Понравилась игра!? Растфнуть на весь экран

Улучши поведенческий фактор на своём сайте.

Забери код здесь

Пишем полную инструкцию о пользовании ruweb.net + DirectAdmin

RuWeb.net - гибкий хостинг
Индекс цитирования