Oké.
Une petite fonction qui retourne une matrice avec les informations d'un site et ses dernières News via les FLUX RSS, Elle est commenté et propose déjà un exemple. Il faut SOAP et CURL installé (CURL je ne suis pas sur mais bon.) Chez un amis, ca ne fonctionnait pas, allez savoir pourquoi :S
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
| <?php
/**
* Cette fonction charge un flux RSS
* @param String $url
* @return Array
*/
function loadFeed($url){
/**
* Cette fonction retourne un tableau multi-dimensionnel contenant toutes les informations du flux
* Array
(
[Channel] => Array
(
[Titre] =>
[Lien] =>
[Description] =>
[Image] =>
[Langue] =>
)
[Items] => Array
(
[0] => Array
(
[Titre] =>
[Lien] =>
[Description] =>
[Auteur] =>
[Date] =>
)
)
)
Au moyen de parcour de tableau simple, toutes les informations sont récupérables.
*/
ini_set('soap.wsdl_cache_enabled', 0);
$client = new SoapClient("http://biloucorp.com/Nuki/Services/SimpleRSS/SimpleRSS.wsdl");
$feed = $client->__soapCall("getFeed", array('string' => $url));
$tableau = unserialize($feed);
/**
* A supprimer pour enlever le formatage automatique
*/
$tableau['Channel'] = array_map("utf8_decode", $tableau['Channel']);
for($i=0; $i<count($tableau['Items']);$i++){
$tableau['Items'][$i] = array_map("utf8_decode", $tableau['Items'][$i]);
}
/**
* Fin du formatage Automatique
*/
return $tableau;
}
/**
* Exemple d'utilisation de la fonction
*/
$flux = loadFeed('http://www.siteduzero.com/Templates/xml/news_fr.xml');
$channel = $flux['Channel'];
$items = $flux['Items'];
echo '<h1>'.$channel['Titre'].'</h1>';
echo '<strong>'.$channel['Description'].'</strong>';
echo '<ul>';
foreach($items as $item){
echo '<li><a href="'.$item['Lien'].'">'.$item['Titre'].'</a></li>';
}
echo '</ul>';
?>
|
|