Где ошибка или как открыть все файлы?

Рейтинг: 0Ответов: 1Опубликовано: 26.11.2014
<?php
$arrDir = scandir($_SERVER['DOCUMENT_ROOT'].'/111/');

foreach($arrDir as $element) { #Перебираем файлы

  if(preg_match('/.dat/',$element)) 
  { 
$_m = fopen('$element', "r");

$m1 = fread($_m, filesize("$element"));

$m2 = explode(".", $m1);

echo "$m2[0]<br/>";

Подскажите, где ошибка или как открыть все файлы?

Обновление

Код вроде правильный, если взять

[php]$_m = fopen('1.dat', "r");

$m1 = fread($_m, filesize("1.dat"));

$m2 = explode(".", $m1);

echo "$m2[0]<br/>";

echo "$m2[1]<br/>"; [/php]

// то выводит первые 2-е данные, что мне нужны. Но с одного файла, а мне нужно, чтобы он вытаскивал со всех в данной папке.


preg_match('/\.dat$/' // не решило проблему, данные не извлекаются из файлов.

Код вроде правильный, если взять

[php]$_m = fopen('1.dat', "r");

$m1 = fread($_m, filesize("1.dat"));

$m2 = explode(".", $m1);

echo "$m2[0]<br/>";

echo "$m2[1]<br/>"; [/php]

// то выводит первые 2-е данные, что мне нужны. Но с одного файла, а мне нужно, чтобы он вытаскивал со всех в данной папке.


preg_match('/\.dat$/' // не решило проблему, данные не извлекаются из файлов.

Ответы

▲ 1

1)

preg_match('/\.dat$/'

\. чтобы выбирались не все символы, а именно точка
$ чтобы на .dat файл ЗАКАНЧИВАЛСЯ

2) не закрыта фигурная скобка у if

Это как минимум. Обычно такие ошибки у тех, кто не использует нормальную IDEшку.

Обновление

IDE - это среда разработки. При программировании в блокноте или даже в блокноте с подсветкой синтаксиса, вы лишаетесь помощи в вещах, в которых компьютер гарантированно работает быстрее вас: проверка скобок, типов данных, названий.

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

Обновление

Данные вытаскивайте file_get_contents($filename);. С ней мороки меньше, хотя и есть недостатки.