Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; GeSHi has a deprecated constructor in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 158

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /home/clients/a38b86744e455b1f2e763fe46170a4c9/web/jebulle.net/demos/codulle/classes/geshi.php on line 2012
.: Codulle : Source de fonctions.php :.

pub

Codulle - L'explorateur de code sources

Accueil>> Codulle0.1.1 >> codulle >> includes

Informations fichier

Nom du fichier : fonctions.php
Taille du fichier : 6 Ko (208 lignes)
Language : PHP

  1. span style="color: #808080; font-style: italic;">////////////////////////////////////////
  2. // Encodage du fichier : UTF-8
  3. // Utilisation des tabulations : Oui
  4. // 1 tabulation = 4 caractères
  5. // Fins de lignes = LF (Unix)
  6. ////////////////////////////////////////
  7.  
  8. ///////////////////////////////
  9. // LICENCE
  10. ///////////////////////////////
  11. //
  12. // This file is part of Codulle.
  13. //
  14. // Codulle is free software; you can redistribute it and/or
  15. // modify it under the terms of the GNU General Public License
  16. // as published by the Free Software Foundation; either version 2
  17. // of the License, or (at your option) any later version.
  18. //
  19. // Codulle is distributed in the hope that it will be useful,
  20. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  21. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  22. // GNU General Public License for more details.
  23. //
  24. // You should have received a copy of the GNU General Public License
  25. // along with Codulle; if not, write to the Free Software
  26. // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  27. //
  28. ///////////////////////////////
  29.  
  30.  
  31. /**
  32. * Librairie de fonctions inclassables.
  33. *
  34. * @author SamRay1024
  35. * @copyright Bubulles Creation - http://jebulle.net
  36. * @license http://gnu.org/copyleft/gpl.html GNU GPL
  37. * @since 24/11/2005
  38. * @version 1.0
  39. */
  40.  
  41.  
  42. /**
  43. * Fonction avancée de lecture de dossiers.
  44. *
  45. * La fonction reçoit un chemin de dossier, ouvre ce dossier et en donne la liste des éléments, qui
  46. * peuvent être ou les dossiers, ou les fichiers, ou les deux.
  47. *
  48. * Les éléments lus du dossiers sont retournés dans un tableau de deux manières différentes. Pour
  49. * les cas où soit les dossiers, soit les fichiers sont demandés, le tableau retourné est un tableau
  50. * indexé classique à une dimension. En revanche pour le cas ou les deux types sont demandés, le tableau
  51. * retourné est un tableau à deux dimensions. La 1ère est associative et contient deux sous-tableaux :
  52. * l'un pour les dossiers, l'autre pour les fichiers.
  53. *
  54. * $aTableauRetour['dir'] contient les dossiers lus.
  55. * $aTableauRetour['file'] contient les fichiers lus.
  56. *
  57. * Les deux sous tableaux sont eux indexés classiquement, tout comme les tableaux de retour sur l'un
  58. * ou l'autre des types demandés (dossiers/fichiers).
  59. *
  60. * @param [STRING] $sDir Chemin du dossier à parcourir.
  61. * @param [STRING] $sMode Modes de parcours du dossier :
  62. * 'DOSSIERS_SEULEMENT' => retourne uniquement les dossiers.
  63. * 'FICHIERS_SEULEMENT' => retourne uniquement les fichiers.
  64. * 'TOUT' => retourne tous les éléments (dossiers ET fichiers).
  65. * @return [MIXED] FALSE en cas d'erreur, tableau des éléments lus sinon.
  66. */// creation du tableau qui va contenir les elements du dossier
  67. // ajout du slash a la fin du chemin s'il n'y est pas
  68. "/^.*\/$/"'/';
  69. // Ouverture du repertoire demande
  70. // si pas d'erreur d'ouverture du dossier on lance le scan
  71. // Parcours du repertoire
  72. '.' && $sItem != '..'// Fermeture du repertoire
  73. // Tri des dossiers
  74. // construction tableau retour
  75. 'DOSSIERS_SEULEMENT''FICHIERS_SEULEMENT''TOUT''dir''file'/**
  76. * Extraire à gauche de la n-ième sous-chaîne.
  77. *
  78. * Extrait d'une chaine tout ce qui se trouve à gauche de la n-ième sous-chaine
  79. * spécifiée. Par exemple, pour extraire les chemins parents dans une chaine de
  80. * caractères qui contient un chemin :
  81. * echo SousChaineGauche( 'dossier1/dossier2/dossier3/dossier4', '/', 2 );
  82. * => Affiche : dossier1/dossier2
  83. *
  84. * @param [STRING] $sChainePrincipale La chaine dans laquelle on doit faire l'extraction.
  85. * @param [STRING] $sSousChaine La chaine à repérer.
  86. * @param [INTEGER] $iNbOccurences Le nombre d'occurences à partir duquel on garde ce qui se trouve
  87. * à gauche de la sous-chaine.
  88. * @return [STRING] Retourne $sChainePrincipale tronquée.
  89. */''/**
  90. * Nettoyer une chaine de chemin d'accès qui provient d'une URL.
  91. *
  92. * Cette fonction permet le nettoyage d'une chaine qui représente un chemin vers un dossier quelconque.
  93. * Elle est destinée à eviter les failles d'accès à des dossiers interdits par une URL. Elle se charge
  94. * donc de repérer les dossiers vides ('//'), les noms tels './' et '../'. En plus, il est possible
  95. * de demander à la fonction d'interdire des dossiers spécifiques dont vous passez le nom par
  96. * l'intermédiaire d'un tableau.
  97. *
  98. * La chaine étant passée par référence, elle n'est pas retournée par la fonction et est directement
  99. * utilisable dans le fichier appelant.
  100. *
  101. * @param [STRING] $sChaine Passée par référence, la chaine est nettoyée des dossiers interdits.
  102. * @param [ARRAY] $aDossiersInterdits Optionnel. Contient une liste de dossiers interdits.
  103. * @return [ARRAY] Retourne la chaine d'accès sous forme de tableau (pour des traitements ultérieurs)
  104. */'';
  105. // On eclate le chemin dans un tableau extraire chaque dossier
  106. '/', $sChaine );
  107.  
  108. // on calcul le nombres de dossiers passés dans l'url
  109. // Si des dossiers sont interdits, on construit la fin de l'expression régulière
  110. '|'// nettoyage des dossiers, pour enlever les chaines vides, les accès du type ./ et ../
  111. // et les dossiers interdits
  112. '''`^[.]+$''`'// reconstruction des index du tableau
  113. // Reconstruction de la chaine d'accès nettoyée
  114. '/'

Liste des projets

Téléchargez Codulle

Publié par Codulle - v0.1.1 - © Bubulles Creations