Path et url

De OviWiki
Révision de 25 septembre 2009 à 17:01 par Paul (discussion | contributions) (bab_url)

Aller à : navigation, rechercher


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();
  • $obj = bab_url::get_request_gp();

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>

toString()

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