fordzon

Рейтинг
138
Регистрация
06.02.2012

Попробовал по другому принципу.

//Удаляю все переносы на странице.
$content=str_replace ("\n", ' ', $content);
//Вставляю переносы после конца каждой строки
$content = preg_replace("!</tr>(.*?)<tr>!si", "</tr>\n<tr>", $content);

Но здесь надо вручную поправить контент, который не в таблице, ещё шапку и футер. Муторно немного.

Вопрос: можно ли убрать переносы только внутри тегов <table>...</table> ?

Ещё нужна помощь.

Нашёл нужные шаблоны и убрал лишние пробелы, теги и атрибуты.

Но в одном моменте торможу.

В ячейках, внутри тегов <td> встречаются переносы строк.

Типо так:

<td> блабла

бла бла

</td>

Как убрать эти переносы строк внутри ячеек?

Ура!!! На сервере всё работает!!!

Спасибо!!!

ukrdev:
*записываем*изменения*в*новый*файл

Попробовал.

Но записалось всё так как и было... Никаких изменений не вижу.

Может у меня в XAMPP \n некорректно работает...

В выводе информации приходилось заменять его на <br>, ибо не переносил строку.

Попробую на сервере...

izbushka:
Для какой индексации? Вы уверены что оно вам надо?

Надо для внутреннего поиска на сайте. Чтоб любое совпадение в любой ячейке выводило всю строку. Чтоб не копаться потом во всей таблице. Вся необходимая инфа уместится в строке.

Сайт небольшой. Поиск организован на PHP с предварительной индексацией всех страниц.

---------- Добавлено 11.06.2013 в 11:19 ----------

izbushka:
если хочется именно на php, то алгоритм такойже

Плохо понял. Если не трудно, не могли бы добавить в мой скрипт эту процедуру.

siv1987:
echo f1 ($site);

Этим я вызываю функцию для обработки страницы $site.

В процессе выполнения функции получаю массив внутри.

А как быть с $links ?

Торможу.

---------- Добавлено 20.05.2013 в 17:28 ----------

Ага... Понял!

$links = f1($site);

Спасибо!!

php.developer,

return $links; уже ошибку не пишет. Но и линки не выводит...

В моём случе в цикле foreach массива echo $link; не выводятся.

Если убираю функцию совсем - всё выводится

Где я что упустил?



$site = "/";
echo f1 ($site);
$links = array();
function f1 ($site)
{

$html = file_get_contents($site);

//echo $html;



/* $html - некий html-код некой страницы, \n - это переход на новую строку (верстальщики иногда это делают) */
//$html = "Текст <a href='page1.html'>ссылка</a> и снова <a hREF ="page2.html" title=''>ссылка</a> конец";
/* Вызываем функцию, которая все совпадения помещает в массив $matches */
preg_match_all("/<[Aa][\s]{1}[^>]*[Hh][Rr][Ee][Ff][^=]*=[ '\"\s]*([^ \"'>\s#]+)[^>]*>/", $html, $matches);
$urls = $matches[1]; // Берём то место, где сама ссылка (благодаря группирующим скобкам в регулярном выражении)
/* Выводим все ссылки */

$n=0;
//$links = array();
for ($i = 0; $i < count($urls); $i++):
if (stristr($urls[$i], $site)) {$urls[$i]=str_replace ($site, '', $urls[$i]);}
if (stristr($urls[$i],'../')) {$urls[$i]=str_replace ('../', '', $urls[$i]);}
if (stristr($urls[$i],'://')) {$urls[$i]=""; }

if ($urls[$i] != '') {
$n++;
$a = $urls[$i];
//echo $a."<br>";
$links[] = $a;
}
endfor;
return $links;
} // КОНЕЦ ФУНКЦИИ

// убираем повторяющиеся Урлы
$links = array_unique ($links);
foreach ($links as $link)
{
echo $link;
//echo $urles= '<a href="'.$site.$link.'">'. $site.$link.'</a>' ;
}

Всем спасибо!

Потихоньку пытаюсь разобраться в ситуации...

ivan-lev, скрипт по ссылке читает в XAMPP обрывки фраз текста из простеньких pdf. Как я понял, без всяких библиотек. Уже интересно. Но некоторые документы как-то совсем криво читает и мало текста выдаёт.

Библиотеки пока подключить не получается с моим чайниковским подходом.

---------- Добавлено 20.05.2013 в 11:22 ----------

Установил по ссылкам отсюда http://www.php.net/manual/en/intro.pdf.php

какую-то прогу PDFlib-9.0.0-MSWin32-COM.msi

Это не оно? Ничем не поможет?

Я даже не знаю что такое библиотеки для php, как выглядят и как подключаются.

Но хотелось бы разобраться.

Вправо и влево я плохо понимаю, пальцем бы кто показал....

Библиотеку скачал отсюда http://www.fpdf.org/

последнюю версию 1.7 , распаковал папку fpdf, рядом лежит файл test.pdf, моя пробная страница test.php и ещё блокнот test.txt

Что надо прописать на страничке, чтоб читабельное содержимое pdf одной строкой поместить в блокнот?

Мои чайниковские мысли в тупике, но если кто напишет скрипт, разберусь.

---------- Добавлено 18.05.2013 в 21:38 ----------

Всё пробую в XAMPP. Но могу проверить на хосте reg.ru и sprinthost.ru

ortegas:
Библиотека скомпилирована в PHP?

Нет. Не знаю где взять библиотеки и, тем более, как и куда их подключить..

Не знал, что это так сложно....

Все примеры скриптов из мануала тормозятся ошибкой на первой же строчке $pdf = pdf_new();

---------- Добавлено 18.05.2013 в 14:42 ----------

Насколько я понял из различных переписок на форумах, проблема чтения pdf до конца не решена.

Это так? Или я вообще ничего в этом не понимаю.

Мне подойдёт самый упрощённый вариант, без восстановления структуры строчек и координат. Просто куски текста, отдельные фразы и слова в произвольном порядке. Они будут использоваться как ключевые при поиске.

Всего: 382