file_get_contents и explode

cmivanov

Registered
как с file_get_contents и explode мога да взема само цифрата на <div class="temp"> и то само за град София ако информация от чужд сайт
е


<td><div class="city">София
</div></td><td><div align="center"><img src='/img/w32/sc.png' alt='слънчево' /><br>слънчево
</div></td><td class="center"><div class="temp">-4°
</div></td><td class="center"><div class="temp-new">-6° min.
</div></td><td class="center"><div class="temp-new">-2° max.
</div></td><td valign="middle"><div align="center"><img src="/img/w32/cu.png" alt="лека облачност"/>
<br>очакване</div></td></tr><tr><td><div class="city">Видин
</div></td><td><div align="center"><img src="/img/w32/cl.png" alt="облачно"/><br>облачно
</div></td><td class="center"><div class="temp">-2°
</div></td><td class="center"><div class="temp-new">-5° min.
</div></td><td class="center"><div class="temp-new">-1° max.
</div></td><td valign="middle"><div align="center"><img src="/img/w32/cl.png" alt="облачно"/>
<br>очакване</div></td></tr><tr><td>
 
Искам всичко преди <div class="temp"> и след цифрата да се изтрие. Само цифрата на този div да остане, кода ми е
<?php
$string = file_get_contents($url);
$edno= explode('<div class="city">София',$string);
$dve=explode('</tr><tr><td>', $edno[1]);
echo $dve[0];
?>
 
Само за софия -
PHP:
<?php
$url='tuk linka ot koito vzimash infoto';
$do=file_get_contents($url);
$a=explode('<div class="temp">',$do);
$b=explode('</div>',$a[1]);
echo'В софия е '.$b[0]; 
?>
 
<div class="temp"> цифрата
е за всички градове и не знае кое от всички <div class="temp"> трябва да земе, погледни първия ми пост където е цялата информация която среща кода
 
пробва ли кода?
така както съм го направил ще взима само от първия див и толкова. ако искаш да маха и това ° просто го добави тук
Код:
$b=explode('°</div>',$a[1]);
 
Идеята ми е, че в моя сайт има мену което е с променлива и променливата е града. И всеки потребител чрез мену-то може да си избере град и да види колко градоса е в момента темепратурата. И за това може да не е само Сзбера как става с софия ще мога си направя и за другите градовеофия, софия ми беше пример а като разбера как става с софия ще мога си направя и другите градове
 
добре.. сега малко нескопосани обяснения от мен:
1. explode - буквално преведено "Взрив, избухване". :D
в php употребата му е лесна - примерен код:
PHP:
<?php
$text=('
nakakaf tekst..dsadsafasf 
<div class="asdf">info 1</div>
<div class="asdf">info 2</div>
<div class="asdf">info 3</div>
<div class="asdf">info 4</div>[/quote]
');
$explode = explode('<div class="asdf">',$text);
echo $explode[0];
?>
сега виждаш $explode[0]
с това показваме коя част да вземе. Когато зададем [0], променливата винаги ще взима всичко преди първия параметър на explode функцията, в случая всичко преди
<div class="asdf">
тоест в страницата ще излезе
nakakaf tekst..dsadsafasf
коато зададем [1] на $explode, тогава в страницата ще излезе всичко след първия параметър в explode функцията, в нашия случай това ще е
info 1</div>
<div class="asdf">info 2</div>
<div class="asdf">info 3</div>
<div class="asdf">info 4</div>
така дотук добре.
сега като си добавим малко код:
PHP:
$ex2=explode('</div>',$explode[1]);
така сега $ex[0] ще взима всичко преди затварянето на див-а, и защото сме задали да взима от $explode[1], той ще изкара
по тази логика можеш да изкараш инфото от 3-я див примерно с този код
PHP:
<?php
$text=('
nakakaf tekst..dsadsafasf 
<div class="asdf">info 1</div>
<div class="asdf">info 2</div>
<div class="asdf">info 3</div>
<div class="asdf">info 4</div>[/quote]
');
$explode = explode('<div class="asdf">',$text);
$ex=explode('</div>',$explode[3]);
echo $ex[0];
?>
надявам се че си разбрал г/д
 

Back
Горе