Ja kiedyś interesowałem się przeszukiwaniem tekstu w pliku i wyświetleniem szukanego pliku i wpadłem na funkcję strpos() i aby wyświetlić wyszukiwany fragment danych zrobiłem coś takiego:
$szukaj = 'g20-wykonawca-hit color2 f3 fontface left';
for($i = 0; $i <= $ile; $i++)
{
if(strpos($file[$i-1
], $szukaj) != false){ $linia = ($i+1);
$linia2 = ($linia+13);
$oczysc = trim($file[$linia]); }
Skrypt ma za zadanie znaleźć wyszukiwany fragment poprzez sprawdzenie warunku: jeżeli znajdziesz fragment to wyświetl go w petli tyle razy ile trzeba. Funkcja trim oczyszcza skrypt z niepotrzebnych spacji.
Jakby co to tutaj masz cały skrypt który wyświetla i linkuje tytuły piosenek ze strony na podstawie wyszukiwanego fragmentu tekstu:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<style>
body{
text-align:left;
}
a{
text-decoration:none;
}
.ico-hear{
background:url('http://zagram.org/kropkaBlue1.gif');
}
</style>
<title>esss</title>
</head>
<body>
<?php
$homepage = file_put_contents('lista.txt', $homepage);
$file = file('lista.txt'); $szukaj = 'g20-wykonawca-hit color2 f3 fontface left';
for($i = 0; $i <= $ile; $i++)
{
if(strpos($file[$i-1
], $szukaj) != false){ $linia = ($i+1); // przeskocz o jeden wiersz w dół
$linia2 = ($linia+13); // przeskocz o trzynaście wierszy w dół
$oczysc = trim($file[$linia]); $wstaw = str_replace(array(' ', '&'), array('+', '%26'), $oczysc); //wyświetl oczyszczony tytuł i wstaw znak + zamiast spacji echo '<a href="http://ulub.pl/szukaj.html?q='.$wstaw.'" >'.$oczysc.'</a> '.$file[$linia2].'<br>'; // linkuj tytuł }
}
?>
</body>
</html>
Demo :
Link