Rubriques

>> Toutes les rubriques <<
· Informatique (67)
· Nature : Aquarium, plantes, et animaux (12)
· Politique et Information (23)
· Sciences (8)
· Musique (7)
· Films (10)
· Peinture, photo (2)
· Histoire (8)
· Bouquins (7)
· Femmes hors du commun (1)

Rechercher
Derniers commentaires

welcome http://mobstan o01.centerblog .net
Par mobstano01, le 11.01.2020

medium retour d'etre aimer chance au jeux loto richesse de la porte monnaie magique valise magique ce qui
Par Anonyme, le 07.11.2019

merci... http://bernie- liege.centerbl og.net
Par bernie-liege, le 27.09.2019

beau travail !
Par Anonyme, le 23.09.2019

dd
Par Anonyme, le 13.06.2019

Voir plus

Articles les plus lus

· Histoire de pet et de dromadaire
· Le concombre tueur !
· L'origine du Monde
· Aux Philippines, trois cent nouvelles espèces !
· Vol de corne de rhinocéros à l'aquarium de Liège

· le Quintette à cordes D 956 de Schubert
· Le dormeur du Val
· Encore des choses surprenantes dans la Nature
· Inception, ou la puissance de l'inconscient
· Ajout du projet Littré dans un media-Wiki
· Bac de quarante mille litres
· Dutronc, je retourne ma veste
· Mort du chanteur Alain Leprest
· Aquarium de Bruxelles
· Le blues de l'informaticien

Voir plus 

Abonnement au blog
Recevez les actualités de mon blog gratuitement :

Je comprends qu’en m’abonnant, je choisis explicitement de recevoir la newsletter du blog "bernie-liege" et que je peux facilement et à tout moment me désinscrire.


Statistiques

Date de création : 20.05.2011
Dernière mise à jour : 29.09.2019
164 articles


Thèmes

Littré PHP XML PHP

Utilisation du 1er littré en PHP

Publié le 04/01/2018 à 14:21 par bernie-liege Tags : Littré PHP XML

Description d'un projet permettant de consulter le dictionnaire Littré version du XIX siècle

Définition[modifier]

Source en XML du dictionnaire Le Littré [1]

 

Structure du fichier[modifier]

Lire Ici.

 

Ajout du Littré dans un média-wiki[modifier] Moyen[modifier]

D'abord, il faut vous procurer les fichiers XML qui contiennent les définitions des mots repris dans le Littré.

Il suffit d'écrire à Fançois Gannaz (vous trouverez ses coordonnées sur son site où il propose ces fichiers à ceux qui le contactent.

Il faut savoir que les fichiers sont au nombres de 26. Pourquoi, parce que il y a 26 lettres. On aura donc le fichier a.xml jusqu'à ...z.xml

La structure de chaque fichier, ainsi que les tags sont bien décrits dans le projet scolaire de javacrim

Noter bien le répertoire où vous rangez ces fichiers (ce répertoire doit être évidemment accessible par votre daemon Apache (ou Tomcat si vous faites le projet en java.)

Accès aux fichiers[modifier]

librairie PHP[modifier]

librairie écrite en php: rechercheLittre.php [2]

Ce fichier est rangé dans le Wiki dans la racine même du-dit wiki.

 

  1.  
  2. <?php
  3.  
  4. function rechercheLittre($term){
  5. // repertoire principal ou se situent les fichiers XML
  6.  
  7. $dirPathDico = "/usr/share/tomcat5/webapps/javacrim/littre/xml/";
  8.  
  9. $resultats = htmlentities('Rien trouvé dans le Littré...') ;
  10. // Ici, on va extraire la première lettre du mot recherche compris dans $term
  11.  
  12. $nomFichierXml = substr ( $term ,0,1 );
  13.  
  14. $nomFichierXml = strtolower( $nomFichierXml ) ;
  15.  
  16. $nomFichierXml .= ".xml";
  17.  
  18. $xml_path = $dirPathDico . $nomFichierXml ;
  19.  
  20. $term = strtoupper($term);
  21.  
  22. if (file_exists($xml_path)) {
  23. $resultats = htmlentities("Pas de résultat trouvé dans le Littré.") . "<br>";
  24.  
  25. $xml = simplexml_load_file($xml_path);
  26.  
  27.  
  28. //$episodes = ($xml->entry->form->dictScrap);
  29.  
  30. $episodes = ($xml->text->body->entry);
  31.  
  32.  
  33.  
  34. foreach ($episodes as $episode) {
  35. if( $episode->form->orth == $term ){
  36. $occurence = $occurence + 1;
  37. if (!$bOK) $resultats = "<u>" .strtolower($episode->form->orth) .
  38. "</u> - (Extrait du <a href='http://liege.mine.nu/~bernie/wiki/index.php/littreXML'>".htmlentities("Littré.")."</a>)<br>";
  39. //if (!$bOK) $resultats = "<u>" .strtolower($episode->form->orth) ."</u><br>";
  40.  
  41. if (!$bOK) $resultats = $resultats . "<i>Orthographe: </i>" . $episode->form->orth . "<br>" ;
  42.  
  43.  
  44.  
  45.  
  46. if ( $episode->form->pron != "" ){
  47. if (!$bOK) $resultats .= "<i>Pronociation: </i>" . $episode->form->pron . "<br>";
  48. }
  49.  
  50. if ($occurence >= 2 ) $resultats .= $occurence . "eme sens: <br><div style='color:#CCFFFF; margin-left: 30px; ' >";
  51. else $resultats .= $occurence . "er sens: <br><div style='color:#CCFFFF;margin-left: 30px; ' >";
  52. //else $resultats .= "<div>";
  53.  
  54. if ( $episode->form->gram != "" ){
  55. if ($episode->form->gram == "s. m.") $resultats .= "<i>Grammaire: </i>". "Substantif masculin.<br>";
  56. else $resultats .= "<i>Grammaire: </i>". $episode->form->gram . "<br>";
  57. }
  58.  
  59. $i = 0;
  60. if ($episode->sense->$i) {
  61. //echo "Y a plusieurs significations  !! ********************* <br>" ;
  62.  
  63. $resultats .= ($i+1) ."e sens : ".$episode->sense->$i->dictScrap ."<br>";
  64. $u=$i + 1;
  65. while ($episode->sense->$u->dictScrap) {
  66. $i = $i +1;
  67. $u=$i + 1;
  68. $resultats .= "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _____<br>";
  69. $resultats .= ($i+1) ."e sens : ".$episode->sense->$i->dictScrap ."<br>";
  70. }
  71. }
  72. else{
  73. //print_r($episode->form);
  74. if ( $episode->sense->dictScrap != "" ) {
  75. $resultats .= "<u><i>Signification: </i></u><br><p>" . $episode->sense->dictScrap . "</p><br>";
  76. }
  77.  
  78.  
  79. if ( $episode->sense->cit->quote != "" ) {
  80. $resultats .="<i>Citation: </i>" . $episode->sense->cit->quote . "<br>";
  81. }
  82.  
  83. if ( $episode->sense->cit->bibl->author != "" ) {
  84. $resultats .= "<i>Auteur: </i>" . $episode->sense->cit->bibl->author . "<br>";
  85. }
  86.  
  87. if ( $episode->sense->cit->bibl->biblScope != "" ) {
  88. //$resultats .= "<i>Biblio: </i>" . $episode->sense->cit->bibl->biblScope . "<br>";
  89.  
  90. }
  91. }
  92.  
  93. $resultats .= "<br>____<br></div>";
  94. $bOK = true;
  95. }
  96.  
  97.  
  98. }
  99.  
  100. }
  101. else{
  102. $resultats .= $resultats . " - " . $xml_path . " non dispon. " ;
  103. }
  104.  
  105. $resultats = "<br>
  106. ___________________________________________
  107. <br>
  108. <span id='littre' STYLE='color:#00CCFF;' >
  109. <small>" . $resultats . "</small></span><br>
  110. ___________________________________________";
  111.  
  112. return $resultats ;
  113. }
  114.  
  115. ?>
  116.  
  • Analyse du code:

Pour les avertis:

dirPathDico contient le répertoire de base où sont rangés mes xml.