|
|
|
| Есть файл в котором содержится:
<html>
<body>
{БЛОК-1}
{БЛОК-2}
{БЛОК-33}
{БЛОК-1}
{БЛОК-2}
</body>
</html>
|
Этот код считает кол-во таких "блоков" в файле.
$file = fopen("index.html","r");
$i=0;
while(!feof($file))
{
$str = fgets($file);
If (preg_match("|БЛОК-+[0-9]|i","$str")) $i++;
}
echo "Количество блоков:".$i;
|
Но есть одно но. Этот скрипт выдаст что их 5. Мне же нужно чтобы скрипт не считал повторяющиеся блоки, т.е выдал бы в этом случае, что их 3.
Подскажите плиз как это сделать. | |
|
|
|
|
|
|
|
для: off
(25.08.2005 в 00:24)
| | Можно загнать блоки в массив, а затем прогнать полученный массив через функцию array_unique(), потом останется только получить число элементов в массиве
<?php
$file = fopen("opr000JR.htm","r");
while(!feof($file))
{
$str = fgets($file);
if (preg_match("|(БЛОК-[0-9]+)|i","$str",$out)) $arr[] = $out[1];
}
// Избавляемся от повторяющихся элементов
$arr = array_unique($arr);
// Выводим результат
echo "Количество блоков:".count($arr);
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(25.08.2005 в 00:38)
| | Огромное спасибо! РЕСПЕКТ! | |
|
|
|