août
5
2009

Petite classe perso

Aujourd’hui je vais vous présenter une petite classe que j’ai commencé à créer. Cette classe sert à générer une url du type http://test.fr/index.php?param1=123&param2=AZER…

Pourquoi créer une classe comme ceci ? Et bien pour avoir à éviter de s’embêter à réécrire tout ceci. J’ai préféré faire comme avec l’aide d’action pour les URL. Si on ne passe aucun paramètre, on a l’url actuelle, sinon on a l’url désirée.

Voici le code de cette classe:

 PHP |  copy code |? 
01
/**
02
 * Classe permettant de génerer des Url et de récupérer l'Url courante.
03
 * 
04
 * @author 		Throrin
05
 * @version 	0.2
06
 * @copyright	Throrïn's Studio
07
 * @license		BSD License
08
 * 
09
 * @todo
10
 * <ul>
11
 * 	<li>0.1 :	Création de la classe</li>
12
 * 	<li>0.2 :	Rajout de la fonction Url()</li>
13
 * </ul>
14
 *
15
 */
16
class App_Url_Url
17
{
18
	private $_baseurl;
19
 
20
	public function __construct()
21
	{
22
		$this->_baseurl = $_SERVER["PHP_SELF"];
23
	}
24
 
25
	/**
26
	 * Permet de créer une adresse formatée.
27
	 * @param array $table Un tableau de paramètres.
28
	 * @return adresse
29
	 */
30
	public function Url($table = null)
31
	{
32
		if(empty($table))
33
		{
34
			$request_uri = $_SERVER["REQUEST_URI"];
35
			return $request_uri;
36
		}
37
		else
38
		{
39
			$params = '';
40
			$i = 1;
41
			foreach($table as $key => $value)
42
			{
43
				if($i == 1)
44
				{
45
					$params .= '?';
46
				}
47
				$params .= $key.'='.$value;
48
				if($i != count($table))
49
				{
50
					$params .= "&";
51
				}
52
				$i++; 
53
			}
54
			return $this->_baseurl.$params;
55
		}
56
	}
57
 
58
	public function getBaseurl()
59
	{
60
		return $this->_baseurl;
61
	}
62
}

Cette classe fait parti d’un petit projet que je me suis lancé. Créer une petite bibliothèque d’applications pas trop lourdes (comparé au framework Zend) mais disposant d’assez d’options pour se révéler très utile.

Si vous souhaitez participer à cela veuillez me contacter depuis la page d’accueil. Si vous redistribuez cette classe, merci de signaler la source.

Articles Connexes

A propos de l'Auteur: Benjamin Besse

Je suis Analyste Développeur chez Goomeo et je suis passioné par tout ce qui touche aux technologies du Web. J'ai commencé par apprendre l'utilisation du Framework Zend et j'ai continué naturellement via Android. Le tout seulement avec les bases acquises en DUT et Licence professionnelle Informatique.

Laisser un commentaire

Mots-Clefs