par
manuso » 19 avr. 2011, 23:33
Bonsoir,
si quelq'un passe par là, pour éclaircir ma démarche, merci d'avance !
mon objectif est de supprimer les doublons dans un fichier xml,
dans un premier cas, je peux éliminer les titres entiers en doublons en passant
par un tableau internmédiaire, et
1) if (!in_array($item['title'],$tab_desc)) puis vider $title lorsque c'est nécessaire
Mais c'est incomplet par rapport au projet
j'ai donc raccourci la valeur $title pour pouvoir faire la recherche dans
mon tableau avec preg_match mais je n'arrive pas à filtrer comme dans le premier
cas.
2) if (!preg_match('/$val/',$tab_desc)) recherche
ne fonctionne pas, ou plutot je crois mon code ou mon raisonnement n'est pas bon par rapport
à ce que je veux obtenir dans le cas 2.
en 1) je filtre bien "mon tableau est important" = > "mon tableau est important"
en 2) je ne fitre pas "mon tableau" = > "mon tableau est important"
merci de votre aide,
Code : Tout sélectionner
function Parser($url_feed, $nb_items_affiches=8)
{
//initialisation du tableau inetermediaire
$tab_desc = array();
// lecture du fichier distant (flux XML)
$rss = fetch_rss($url_feed);
if (is_array($rss->items))
{
// on ne recupere que les elements les + recents
$items = array_slice($rss->items, 0, $nb_items_affiches);
// boucle sur tous les elements
foreach ($items as $item)
{
// on raccourci les valeurs
$val= substr($item['title'],0,28);
if (!preg_match('/$val/',$tab_desc))
{
$title = $item['title'];
array_push($tab_desc,$item['title']);
} else {
//sinon on vide la variable title
$title = "";
$html .= ""; // vide;
}
Bonsoir,
si quelq'un passe par là, pour éclaircir ma démarche, merci d'avance !
mon objectif est de supprimer les doublons dans un fichier xml,
dans un premier cas, je peux éliminer les titres entiers en doublons en passant
par un tableau internmédiaire, et
1) if (!in_array($item['title'],$tab_desc)) puis vider $title lorsque c'est nécessaire
Mais c'est incomplet par rapport au projet
j'ai donc raccourci la valeur $title pour pouvoir faire la recherche dans
mon tableau avec preg_match mais je n'arrive pas à filtrer comme dans le premier
cas.
2) if (!preg_match('/$val/',$tab_desc)) recherche
ne fonctionne pas, ou plutot je crois mon code ou mon raisonnement n'est pas bon par rapport
à ce que je veux obtenir dans le cas 2.
en 1) je filtre bien "mon tableau est important" = > "mon tableau est important"
en 2) je ne fitre pas "mon tableau" = > "mon tableau est important"
merci de votre aide,
[code]
function Parser($url_feed, $nb_items_affiches=8)
{
//initialisation du tableau inetermediaire
$tab_desc = array();
// lecture du fichier distant (flux XML)
$rss = fetch_rss($url_feed);
if (is_array($rss->items))
{
// on ne recupere que les elements les + recents
$items = array_slice($rss->items, 0, $nb_items_affiches);
// boucle sur tous les elements
foreach ($items as $item)
{
// on raccourci les valeurs
$val= substr($item['title'],0,28);
if (!preg_match('/$val/',$tab_desc))
{
$title = $item['title'];
array_push($tab_desc,$item['title']);
} else {
//sinon on vide la variable title
$title = "";
$html .= ""; // vide;
}
[/code]