Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Функция glob()
 
 автор: Alexey_Tihonenko   (31.07.2009 в 11:26)   письмо автору
 
 

Добрый день! Скажите пожалуйста, по какому правилу следует формировать шаблон в функции glob():
glob($pattern [, $flags])

Такое ощущение, как будто часть мета из регулярных выражение поддерживаются, а часть нет.
Например, если шаблон $pattern заключить в спецсимволы ||, то функция ничего не находит, даже если вхождения есть соглавно правилам регулярных выражений. Также непонятно как ведет себя символ точка ".", я так понял, что в функции glob() он не является метасимволом, в общем хотелось бы прочесть правила согласно которым следует формировать шаблом $pattern.

  Ответить  
 
 автор: Trianon   (31.07.2009 в 11:39)   письмо автору
 
   для: Alexey_Tihonenko   (31.07.2009 в 11:26)
 

>Добрый день! Скажите пожалуйста, по какому правилу следует формировать шаблон в функции glob():

http://ru.php.net/glob
http://www.delorie.com/djgpp/doc/libc/libc_426.html

>Такое ощущение, как будто часть мета из регулярных выражение поддерживаются, а часть нет.

Где в описании glob() упоминаются регулярные выражения?

  Ответить  
 
 автор: Alexey_Tihonenko   (01.08.2009 в 11:42)   письмо автору
 
   для: Trianon   (31.07.2009 в 11:39)
 

Спасибо за ссылки, особенно за вторую.
Одно уточнение:
... - Matches all the subdirectories, recursively (VMS aficionados, rejoice!).

Что означает вроде понял. Перевел как "Соответствует всем подкаталогам, рекурсивно". Т.е. использование этого спецсимвола должно поместить в массив с результатами все подкаталоги текущего каталога, в том числе и вложенные в любой степени.
А как его использовать?
Такой код выводит пустой массив несмотря на то, что текущий каталог содержит подкаталоги.
<?php
  $arr 
glob("...");
  echo(
"<pre>");
  
print_r($arr);
  echo(
"</pre>");
?>

  Ответить  
 
 автор: Trianon   (01.08.2009 в 12:23)   письмо автору
 
   для: Alexey_Tihonenko   (01.08.2009 в 11:42)
 

значит эта конструкция не работает.

  Ответить  
 
 автор: x64   (31.07.2009 в 12:19)   письмо автору
 
   для: Alexey_Tihonenko   (31.07.2009 в 11:26)
 

в простейшем случае как в командной строке
? — один любой символ
* — группа символов

при наличии ключа GLOB_BRACE можно задавать диапазоны в виде *.{gif|jpg|png}

по идее, этого хватит практически на 100% случаев

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования