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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: PHP и HTML страницы

Сообщения:  [1-7] 

 
 автор: Diablo_   (24.08.2006 в 02:22)   письмо автору
 
   для: cheops   (24.08.2006 в 02:19)
 

Всем огромное спасибо!
Нужно было удалять толко определённые тэги!
Я уже всё в ручную перебрал!:)

   
 
 автор: cheops   (24.08.2006 в 02:19)   письмо автору
 
   для: Diablo_   (23.08.2006 в 15:00)
 

Вам вообще все HTML-тэги нужно удалить или только определённые? В PHP имеется стандартная функция strip_tags(), которая удаляет из текста HTML-тэги.

   
 
 автор: dim   (23.08.2006 в 20:12)   письмо автору
 
   для: Diablo_   (23.08.2006 в 19:29)
 

а если надо удалить какой-то один тег, то подойдет следующее:

<?
$fl 
file("your_file.txt");
$pattern "/<font[^>.]*>(^<.)*(<\/font>)?/i";
for (
$i=0$i<count($fl); $i++)
{
 echo 
preg_replace($pattern,"\\1",$fl[$i]);
}
?>

Удаляет все теги типа <font something>any text</font>, а также просто открытые теги (которые забыли закрыть) <font something>. something может быть пустым, как и any text.

   
 
 автор: DDK   (23.08.2006 в 19:59)   письмо автору
 
   для: Diablo_   (23.08.2006 в 19:29)
 


<?php
$dir 
opendir('.');
$totalcnt 0;
while (
$file readdir($dir)) {
    if (
$file != "." && $file != ".." && is_file($file)) {
        
$filecont file_get_contents($file);
        
$filecont preg_replace('/<(font|span)(.*?)>/i'''$filecont);
        
$filecont preg_replace('/<\\/(font|span)>/i'''$filecont);
        
$filecont preg_replace('/ style=("|\')(.*?)("|\')/i'''$filecont);
        
$filecont preg_replace('/ class(="|=\'|=)(.*?)("|\'| )/i'''$filecont);
        
$f fopen($file"w");
        
fwrite($f$filecont);
        
fclose($f);
        
$totalcnt++;
    }
}
closedir($dir);
echo 
"Обработано файлов: ".$totalcnt;
?>

Положите этот скрипт в папку с файлами обрабатываемыми (в папке должны быть только они) и запустите.

   
 
 автор: dim   (23.08.2006 в 19:32)   письмо автору
 
   для: Diablo_   (23.08.2006 в 19:29)
 

Возможно. С помощью регулярных выражений

   
 
 автор: Diablo_   (23.08.2006 в 19:29)   письмо автору
 
   для: Diablo_   (23.08.2006 в 15:00)
 

Это что ли невозможно?

   
 
 автор: Diablo_   (23.08.2006 в 15:00)   письмо автору
 
 

Можно ли как то с помощью пхп из большого количества хтмл страниц, удалить все упоминания о font, span, class, style итд?

   

Сообщения:  [1-7] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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