| |
|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
glattering Nouveau WRInaute
Inscrit le: 10 Avr 2008 Messages: 2
|
Posté le : Jeu Avr 10, 2008 15:46 Sujet du message: PHP objet: questions! |
|
|
Bonjour à tous!
Voilà, je débute en PHP et en programmation Objet et j'ai quelques questions spécifique au fait de faire du PHP avec de l'objet.
J'aimerais créer les bonnes classes pour permettre de facilement créer les éléments de mes pages web (liens, images, header, menus, listes, tableaux etc), et disons que je m'embrouille un peu! Je n'arrive pas à voir quelles classes et quelles méthodes, et comment organiser mes classes pour disposer d'un ensemble d'outils faciles à utiliser.
Auriez vous des exemples (complets si possible car j'ai trouvé plein d'exemples très bien, mais dès que j'essaie de les appliquer plus globalement, ça ne convient pas) ou bien des idées ou des conseils?
Merci!
/glattering, débutant. |
|
| |
|
 |
Bool WRInaute accro

Inscrit le: 26 Fév 2004 Messages: 1248 Localisation: Lyon
|
Posté le : Jeu Avr 10, 2008 16:21 Sujet du message: PHP objet: questions! |
|
|
Hello,
pour ma part pondre une classe histoire de remplacer
| Code: |
| <img src="<?=$imgSrc?>" alt="bidule" /> |
par
| Code: |
$img = new img( $imgSrc );
$img->alt = 'bidule';
echo $img; |
Je ne vois vraiment pas l'intérêt.
Là où j'utilise l'objet c'est pour l'accès et le traitement des données. Pas pour faire du "HTML Objet". |
|
| |
|
 |
glattering Nouveau WRInaute
Inscrit le: 10 Avr 2008 Messages: 2
|
Posté le : Jeu Avr 10, 2008 17:15 Sujet du message: PHP objet: questions! |
|
|
Évidemment, ce n'est pas pour faire une bête balise img, mais bien pour tout organiser.
Si un jour au lieu du html, je veux créer une page en xml, il suffira de rajouter la fonction qui génère le xhtml et hop, la structure sera la même j'aurais juste besoin d'appeler une méthode getXML() à la place de la méthode getHTML(). Même chose pour générer un fichier texte plutôt qu'une page web.
C'est la structure , l'organisation qui importe, ensuite ce qu'on veut afficher se change facilement. |
|
| |
|
 |
Bool WRInaute accro

Inscrit le: 26 Fév 2004 Messages: 1248 Localisation: Lyon
|
Posté le : Jeu Avr 10, 2008 17:42 Sujet du message: PHP objet: questions! |
|
|
| Et bien je ne vois toujours pas l'intérêt : j'utilise pourtant beaucoup les objets, suis un modèle "pseudo MVC", mais là ça me semble complètement disproportionné et inadapté. |
|
| |
|
 |
gnarco Nouveau WRInaute
Inscrit le: 07 Sep 2005 Messages: 16
|
Posté le : Jeu Avr 10, 2008 20:33 Sujet du message: PHP objet: questions! |
|
|
Salut,
Je dirais que pour l'aspect rendu (donc le format généré par ton outil gérant ton site) doit se baser sur des templates.
Ainsi, tu peux tout à fait mettre des templates qui donne du html, d'autres du xml, et du csv par exemple.
Ensuite, tu dois séparer tes différentes couches :
- Accès aux données
- Traitement des données
- Affichage (c'est là qu'interviennent les templates)
Depuis ta couche de traitement de données, tu propulses l'information nécessaire pour tes templates (une liste provenant d'une base de données)
Et au niveau de tes templates, il te faut un système pour exploiter ces données.
Tu peux le faire en mettant un peu de php :
<img src='<? echo $image_src1; ?>'> par exemple
ou utiliser un moteur de template type smarty.
Dans la couche de template, il y a souvent des éléments que l'on appelle helper (des fonctions simples) permettant de faire des manipulations pour l'affichage (formatage de date ou autre).
Ce que je te décris là est ce qu'on appelle le modèle MVC pour Model (base données) View(template) Control(couche de traitement).
Personnellement, j'ai commencé à développer, il y a très longtemps et je me suis réalisé un framework basé sur ce concept que je fais évolué régulièrement.
Entre temps, il y a eu des gros projet basé sur ce concept et qui embarque toute la logique classique d'un site internet (traitement des urls, contrôle des variables soumises, gestion des formulaires, gestion de l'identification ...)
Plusieurs projets :
- Symphony : http://fr.wikipedia.org/wiki/Symfony
- Zend framework : http://fr.wikipedia.org/wiki/Zend_Framework
- CakePHP : http://fr.wikipedia.org/wiki/CakePHP
- CodeIgniter
- Jelix : http://www.jelix.org/
Personnellement, si je devais refaire, je testerais l'ensemble de ces projets, je prendrais celui qui semble le plus adéquat par rapport à mes besoins (facilité de développement, évolution possible, communauté, etc ...) et j'investirais dessus en terme de connaissance et j'ajouterais une brique me permettant de mutualiser mes développements.
Je te conseille donc de ne pas réinventer la roue, des milliers de personnes ont déjà planchées sur ces problèmes et en ont sorti des solutions.
De mon côté, je me retrouve un peu coincé, avec mon framework qui est sympatique tout plein, mais qui n'évolue que par moi et qui n'est pas connu dans l'industrie (problème pour former des intervenants, etc ...)
J'espère t'avoir aiguillé quelque peu !
Bon courage ! |
|
| |
|
 |
k2pi WRInaute occasionnel

Inscrit le: 04 Fév 2007 Messages: 204
|
Posté le : Jeu Avr 10, 2008 21:41 Sujet du message: PHP objet: questions! |
|
|
tout a fait d'accord avec gnarco !
Sinon il ne faut pas oublier une chose c'est que php n'est pas java !
oui ca peut paraitre trivial, mais le full objet n'est pas recommande pour php (c'est pas moi qui le dit mais les concepteurs du langage, c'est dire)
En clair l'objet apporte ennnooormement a php et je suis d'ailleurs un grand utilisateurs des objets en php. Mais il ne faut pas tomber dans l'objet pour l'objet. |
|
| |
|
 |
| |
|
|
|
|
Autres sujets de discussion :
|
|