PHP скрипт для печати определенного значения рядом со строкой, из нескольких текстовых файлов в одном каталоге? - PullRequest
1 голос
/ 24 августа 2011

У меня есть 50 текстовых файлов, из которых в основном являются копиями электронных писем, каждый текстовый файл имеет следующий формат:

To: blabla@examplecom 
Subject: blabla 
From: bla1@example.com 
Message: This is a test message

Цель состоит в том, чтобы написать PHP-скрипт, который сканирует каждый файл (все находятся в одном каталоге) и выводит список каждого «уникального» адреса электронной почты в поле from. Концепция очень проста.

Кто-нибудь может указать мне правильное направление здесь? До сих пор мне удалось заставить мой PHP-скрипт читать содержимое всех файлов в каталоге и выводить результат:

<?php
$directory = "emails/";
$dir = opendir($directory);
while (($file = readdir($dir)) !== false) {
  $filename = $directory . $file;
  $type = filetype($filename);
  if ($type == 'file') {
     $contents = file_get_contents($filename);
     $items = explode('/n', $contents);
     echo '<table width="500" border="1" cellpadding="4">';
     foreach ($items as $item) {
       echo "<tr><td>$item</td></tr>\n";
     }
     echo '</table>';
  }
}
closedir($dir);
?> 

Итак, теперь мне нужно иметь возможность получить значение, назначенное рядом со строкой «От:», из каждого файла, а затем отобразить вывод этого значения в списке.

Кто-нибудь может подтолкнуть меня в правильном направлении здесь? Любые объяснения кода были бы полезны, так как я понимаю концепцию и то, что мне нужно делать, но синтаксически я борюсь!

1 Ответ

0 голосов
/ 25 августа 2011

$ to = stristr ($ item, 'To:');
$ from = stristr ($ item, 'From:');
$ subject = stristr ($ item, 'Subject: ');
$ message = stristr ($ item,' Message: ');

if ($ to! == FALSE) echo $ to;
elseif ($ from! ==FALSE) echo $ from;
elseif ($ subject! == FALSE) echo $ subject;
elseif ($ message! == FALSE) echo $ message;

Это получит значения, которые вы ищете.Просто поместите это в цикл foreach.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...