Introduction au Zend Framework

 Apprendre Zend Framework

appendix

 Guide de référence Zend Framework


  •  Zend_Gdata
  •  Zend_Http
  •  Zend_InfoCard
  •  Zend_Json
  •  Zend_Layout
  •  Zend_Ldap
  •  Zend_Loader
  •  Zend_Locale
  •  Zend_Log
  •  Zend_Mail
  •  Zend_Markup
  •  Zend_Measure
  •  Zend_Memory
  •  Zend_Mime
  •  Zend_Navigation
  •  Zend_Oauth
  •  Zend_OpenId
  •  Zend_Paginator
  •  Zend_Pdf
  •  Zend_ProgressBar
  •  Zend_Queue
  •  Zend_Reflection
  •  Zend_Registry
  •  Zend_Rest

  •  Zend_Search_Lucene
  •  Zend_Serializer
  •  Zend_Server
  •  Zend_Service
  •  Zend_Session
  •  Zend_Soap
  •  Zend_Tag
  •  Zend_Test
  •  Zend_Text
  •  Zend_TimeSync
  •  Zend_Tool
  •  Zend_Tool_Framework
  •  Zend_Tool_Project
  •  Zend_Translate
  •  Zend_Uri
  •  Zend_Validate
  •  Zend_Version
  •  Zend_View
  •  Zend_Wildfire
  •  Zend_XmlRpc
  • ZendX_Console_Process_Unix
  • ZendX_JQuery
  • Translation 61.2% Update 2010-11-28 - Revision 23149 - Version ZF 1.11.x

    32.7. Modifier la structure du flux ou des entrées

    La syntaxe intuitive de Zend_Feed peut aussi bien servir à lire des flux ou des entrées qu'à les construire et les modifier. Vous pouvez facilement transformer vos nouveaux objets (ou objets modifiés) en code XML bien formé et enregistrer ensuite ce code dans un fichier ou le renvoyer au serveur.

    Exemple 32.5. Modifier l'entrée existante d'un flux

    $flux = new Zend_Feed_Atom('http://atom.exemple.com/flux/1');
    $entree $flux->current();

    $entree->title 'Ceci est un nouveau titre';
    $entree->author->email 'mon_email@exemple.com';

    echo 
    $entree->saveXML();

    Ce code affichera une représentation XML complète (y compris le prologue <?xml ...>) de la nouvelle entrée, avec les espaces de noms XML nécessaires.

    Notez que le code ci-dessus fonctionnera même si l'entrée existante ne possédait pas de balise author. Vous pouvez utiliser autant de fois que vous le souhaitez l'opérateur d'accès -> dans une instruction d'affectation ; si nécessaire, les niveaux intermédiaires seront créés pour vous automatiquement.


    Si vous souhaitez utiliser dans votre entrée un espace de noms autre que atom:, rss: ou osrss:, vous devez enregistrer cet espace de noms auprès de Zend_Feed à l'aide de la méthode Zend_Feed::registerNamespace(). Lorsque vous modifiez un élément existant, il gardera toujours son espace de noms d'origine. Lorsque vous ajoutez un élément, il utilisera l'espace de noms par défaut si vous ne spécifiez pas explicitement un autre espace de noms.

    Exemple 32.6.  Créer une entrée Atom dont les éléments appartiennent à un espace de noms personnalisé

    $entree = new Zend_Feed_Entry_Atom();
    // en Atom, id est toujours affecté par le serveur
    $entree->title 'mon entrée perso';
    $entree->author->name 'Auteur';
    $entree->author->email 'moi@exemple.com';

    // maintenant on s'occupe de la partie personnalisée
    Zend_Feed::registerNamespace('monen',
                                 
    'http://www.exemple.com/monen/1.0');

    $entree->{'monen:monelement_un'} = 'ma première valeur personnalisée';
    $entree->{'monen:conteneur_elt'}
           ->
    partie1 'première partie imbriquée personnalisée';
    $entree->{'monen:conteneur_elt'}
           ->
    partie2 'deuxième partie imbriquée personnalisée';

    echo 
    $entree->saveXML();

    digg delicious meneame google twitter technorati facebook

    Comments

    Loading...