Tri XML par date !


bilos
WRInaute impliqué
WRInaute impliqué
 
Messages: 946
Inscription: 11 Oct 2005

Tri XML par date !

Message le Mar Jan 06, 2009 12:26

Je réalise une galerie de photos en flash !

Alors pour me simplifier la tâche, l'upload se réalise dans un dossier images

Puis je fait appel un script php qui liste les noms de fichiers au format XML :

Code: Tout sélectionner
$chemin = 'images';

$xml_string = <<<XML
<?xml version="1.0" encoding="UTF-8"?>
<images>
</images>
XML;

$xml_generator = new SimpleXMLElement($xml_string);

if ( $handle = opendir( $chemin) )
{
    while (false !== ($file = readdir($handle)))
    {
        if ( is_file($chemin.'/'.$file) && ext($file) )
        {
           list( $width, $height ) = getimagesize($chemin.'/'.$file);   
           $image = $xml_generator->addChild('image');
           setlocale(LC_ALL, "fr_FR");
           $image->addchild('time',  date("F d Y H:i:s", filemtime($chemin.'/'.$file))); 
           $image->addChild('path', $chemin.'/'.$file);   
           $image->addChild('height', $height);   
           $image->addChild('width', $width);       
        }
    }
    closedir($handle);
}

header("Content-Type: text/xml");
echo $xml_generator->asXML();   

function ext($fil) {
$extensions = array('.png', '.gif', '.jpg', '.jpeg','.JPG');
$extension = strrchr($fil, '.');
if (in_array($extension, $extensions)) {
return true; } else {return false ;}
}


Je veux faire un tri descendants par dates de dernières modification des fichier !
Ainsi avoir des Nœuds dans l'ordre

Y'a t-il qqun qui le sait ?


Bacteries
WRInaute passionné
WRInaute passionné
 
Messages: 1369
Inscription: 27 Mai 2004

Message le Mar Jan 06, 2009 12:45

Tu mets les infos sur tes fichiers dans un tableau.
Tu tris ton tableau.
Tu créé ton XML comme tu as fait là.

Exemple ici (à adapter) : http://cyberzoide.developpez.com/php4/file/#list


bilos
WRInaute impliqué
WRInaute impliqué
 
Messages: 946
Inscription: 11 Oct 2005

Message le Mer Jan 07, 2009 16:40

J'ai bien pensé à cet algorithme !

Mais ce que je veux vérifier c'est que Simple XML n'a pas de commande de tri des éléments ou non ?

Après une longue recherche, j'ai bien compris que ce n'est pas disponible car elle ne renvoit pas un tableau comme on pourrait le faire avec DOM XML ou SAX


Bacteries
WRInaute passionné
WRInaute passionné
 
Messages: 1369
Inscription: 27 Mai 2004

Message le Mer Jan 07, 2009 17:01

Une transformation XSL pourrait te permettre de le faire. Mais en PHP ça sera plus souple je pense.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités