Path et url : Différence entre versions

De OviWiki
Aller à : navigation, rechercher
(bab_url)
(Utilisation de l'objet)
Ligne 116 : Ligne 116 :
  
 
* <code>$obj = new bab_url($url);</code>
 
* <code>$obj = new bab_url($url);</code>
* <code>$obj = bab_url::get_request();</code>
+
* <code>$obj = bab_url::get_request();</code> : l'url est construite a partir des noms paramètres de la requête passés en paramètres à la méthode <code>get_request()</code>
* <code>$obj = bab_url::get_request_gp();</code>
+
* <code>$obj = bab_url::get_request_gp();</code> : l'url est construite a partir de tout les paramètres de la requête
  
 
Sur l'objet, il est possible d'ajouter des paramètres en utilisant les propriétés :
 
Sur l'objet, il est possible d'ajouter des paramètres en utilisant les propriétés :
Ligne 131 : Ligne 131 :
  
 
</source>
 
</source>
 +
 +
 +
==== goto() ====
 +
 +
La méthode <code>goto</code> ajoute un header HTTP "location" puis termine le script.
 +
 +
Exemple :
 +
 +
<source lang="php">
 +
 +
bab_url::get_request('tg', 'idx')->goto();
 +
 +
</source>
 +
 +
Cet exemple construit une url à partir de <code>tg</code> et <code>idx</code> puis redirige l'utilisateur dessus.
  
 
==== toString() ====
 
==== toString() ====
  
La méthode toString renvoi la chaine de l'url
+
La méthode <code>toString</code> renvoi la chaine de l'url

Version du 29 septembre 2009 à 08:01


Warning.png Cette API est disponible à partir de Ovidentia 7.2.0

bab_Path

bab_Path est un objet permettant de manipuler un chemin

Inclure le fichier pour utiliser l'API :

<source lang="php"> include_once $GLOBALS['babInstallPath'].'utilit/path.class.php'; </source>


bab_Path::isAbsolutePath($path)

Tester si un chemin est absolu

Utilisation de l'objet

l'objet bab_Path peut prendre un nombre indéfini de paramètre lors de sa création, il permet de créer un chemin a partir de la chaine de caractère d'un ou plusieurs chemins

exemple :

<source lang="php"> $path = new bab_Path('www/html/ovidentia'); </source>

avec cet autre exemple, on obtendra le même résultat :

<source lang="php"> $path = new bab_Path('www','html/ovidentia'); </source>

isAbsolute()

tester si le chemin de l'objet est absolu, la méthode retourne un booléen.


isFolderWriteable()

Tester de manière très poussée si il est possible d'écrire dans le répertoire.

Cette méthode à été crée afin de palier aux problèmes des installations de PHP sur des plateformes windows avec IIS car dans ce cas la méthode is_writable de php ne fonctionne pas, la méthode retourne un booléen mais aussi deux types d'exceptions :

  • Exception : dans le cas ou la demande ne peut être traitée (le répertoire n'existe pas ou il pointe vers un fichier)
  • bab_FolderAccessRightsException : quand le problème rencontré concerne les droits d'accès

Dans le cas ou la méthode renvoie false, une exception sera toujours levée.

Il faut utiliser cette méthode le moins souvent possible car elle est beaucoup plus lente que la fonction is_writable de php. Pour déterminer si on peut écrire réellement dans répertoire cette méthode effectue des tests de création et de suppression de fichiers et de répertoires.


pop() et push()

pop() permet de retourner le dernier répertoire du chemin, et de raccourcir le chemin d'un élément

push('folder') permet d'ajouter le répertoire folder à la fin du chemin

createDir()

Cette méthode essai de créer le répertoire sur le disque

tostring()

Retourne le chemin sous la forme d'une chaîne de caractères


bab_url

bab_url est un objet permettant de manipuler une adresse url.

Inclure le fichier pour utiliser l'API :

<source lang="php"> include_once $GLOBALS['babInstallPath'].'utilit/urlincl.php'; </source>


bab_url::mod($url, $param, $value)

Cette méthode statique permet de modifier ou ajouter un paramètre dans une url

  • $url : adresse à modifier
  • $param : nom du paramètre de l'url à créer ou à modifier
  • $value : valeur du paramètre qui peut être une chaine de caractères ou un tableau multidimensionnel

la méthode retourne la nouvelle url modifiée

bab_url::request()

cette méthode permet de créer une url en fonction du contexte de la requête en cours. Un nombre indéterminé de parmètre peuvent être indiqués, ils correspondent aux noms des parmètre reçus dans _GET ou _POST lors de la requête sur le serveur web.

exemple :

<source lang="php"> echo bab_url::request('tg','idx'); </source>

bab_url::request_gp

Cette méthode crée une url a partir de tout les paramètres reçus dans _POST et _GET combinés

bab_url::get_request()

Créer un objet bab_url à partir des paramètre de la requête en cours, c'est le même fonctionnement que la méthode request() mais un objet bab_url est retourné.

bab_url::get_request_gp()

Créer un objet à partir de tout les paramètres de la requête en cours.

Utilisation de l'objet

Il existe 3 possibilités pour créer un objet bab_url :

  • $obj = new bab_url($url);
  • $obj = bab_url::get_request(); : l'url est construite a partir des noms paramètres de la requête passés en paramètres à la méthode get_request()
  • $obj = bab_url::get_request_gp(); : l'url est construite a partir de tout les paramètres de la requête

Sur l'objet, il est possible d'ajouter des paramètres en utilisant les propriétés :

exemple :

<source lang="php">

$obj = bab_url::get_request('tg'); $obj->idx = 'edit'; $obj->id_article = 2; $url = $obj->toString();

</source>


goto()

La méthode goto ajoute un header HTTP "location" puis termine le script.

Exemple :

<source lang="php">

bab_url::get_request('tg', 'idx')->goto();

</source>

Cet exemple construit une url à partir de tg et idx puis redirige l'utilisateur dessus.

toString()

La méthode toString renvoi la chaine de l'url