1

Voila, je veux implementer quelque chose qui ressemble aux listes chaine mais en PPO( je connais pas le terme exacte qui correspond a cela).

class HtmlComponent {
 private idCss;
 private classCss;
}

class HtmlContainer extends HtmlComponent {
 private array HtmlContainer;
 private text;
}




J'obtient une erreur du genre : n'arrive pas a trouver lA CLASSE HtmlContainer.

Comment implementer ca en Php 4.02 ?

Je code avec EasyPhp et Php n'est qu'a la version 4.02



2

J'ai pas tellement le temps, mais un coup de google te fait bomer directement là dessus :
http://www.manuelphp.com/php/language.oop5.reflection.extending.php

Sinon, n'hésite pas à aller lire la doc PHP de php.net.

Sinon il n'est pas impossible que ce soit arrivé à partir de PHP5, je ne me rappelle plus, d'autant plus que, plus nous approchons de la v6, plus le modèle objet devient riche.
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

3

Bon finalement, j'ai fait le chainage des Objet sans faire de typage( Ce n'est pas possible en Php 4.* ).
D'ailleurs j'ai pu contourner tout probleme en utilisant des array().

C'est terrible le Php, Je m'eclate a mort a faire Des Classes Chaines Pour representer les Objets Html
Juste a partir de 2 Classes HtmlComponent et HtmlContainer.

Il suffit de bien declarer ses objet pour generer a la volet un Page Dynamique Html.

J'ai derive la Classe HtmlContainer pour Obtenir presque tous Objets Complexes qu'on peut avoir dans une page Html.

Trop mortel le resultats, et tout ca en definissant une 10aine de classe seulement.


Je sais pas comment j'ai pu faire sans auparavant( mon ancien moteur utilisait les Tableaux, au lieu de la puissance du CSS magique ).


Si on m'avait dit que c'etait aussi facile de programmer sur le Web, il y a bien longtemps que je m'y serais mis.

4

andoh_wilfried :
C'est terrible le Php, Je m'eclate a mort
C'est vrai que c'est bien le PHP, mais on peut l'utiliser pour faire autre chose que de simples pages HTML ^^
C'est un langage avec lequel on peut vraiment tout faire smile
avatar

5

T'es serieux la ?

Je connais pas les performances du software( pour tout dire je commence a peine la prog sur PC )
mais me semble que Php c'est pas un language compile comme JAVA. C'est un language interprete
ca doit permettre de faire de superbes applications bureautiques et peut-etre des jeux de reflexion,
mais pour des trucs qui necessite beaucoup de calcul, je pense que je prefere utiliser JAVA.

6

Oué, quand même. Plutôt Java (ou C) pour des calculs + complexes.
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

7

Cest vrai que le Java et le C sont plus puissants, je les utilise pour les applications sur PC, mais sur le web, et sur FREE en particulier, impossible de les utiliser...
andoh_wilfried :
T'es serieux la ?

Bah oui, on peut quand même faire des trucs bien en PHP :

2148.png
avatar

8

On peut aussi faire des trucs bien en visual basic, ou ada ou lisp, c'est pas pour cela que c'est fait pour tout... et surtout adapte

9

andoh_wilfried :
Je connais pas les performances du software( pour tout dire je commence a peine la prog sur PC )
mais me semble que Php c'est pas un language compile comme JAVA. C'est un language interprete
ca doit permettre de faire de superbes applications bureautiques et peut-etre des jeux de reflexion, mais pour des trucs qui necessite beaucoup de calcul, je pense que je prefere utiliser JAVA.

Java aussi c'est interpreté (enfin "bytecodé" et "vm-isé"), et difficilement comparable au C (ce n'est pas toi qui a fait cette comparaison mais flemme d'aller chercher la 2eme citation tongue) en terme de vitesse ^^
Enfin bon ça dépend, c'est vrai qu'on peut quand même faire un paquet de trucs en Java, même des jeux tant qu'ils sont pas trop complexes... et quand on compare à qqchose d'aussi lent que le php c'est le jour et la nuit happy
Dans tous les cas pencil nEUrOO ^^
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

10

-> Therpo
Ton image c'est generee instantanement en php avec une Librairie je suppose; laquelle ?

Je fait un tour dans wikipedia pour voir une peut ce que c'est que du byte-code.
Ce que j'ai compris c'est que c'est comme la tokeneisation du TIOS pour le TI-Basic :
- gestion par registre ou adressage des donnees et structure de controles plutot qu'un systeme de VAT(FAT) comme le fait le TIOS.

Comme chaque fonction est code sur 1 byte, cela ne correspond pas vraiment a une instruction du processeur.
C'est donc a la machine virtuelle de faire le lien entre le byte-code et l'instruction du processeur equivalente,
cela de facon dynamique a l'execution de JAVA.

D'ou la difference en terme de vitesse par rapport au C.

Je suppose donc qu'en terme optimisations de code,
un language compile ne fait pas plus qu'un lauguage interprete utilsant du
byte-code


11

andoh_wilfried :
Ton image c'est generee instantanement en php avec une Librairie je suppose; laquelle ?
Tu connais GD ?
avatar

12

J'ai lu que PHP est un language byte-code tout comme Java.
Mais comment ce la ce fait-il ?
Il n'y aucune phase de transformation en byte-code cote programmeur.

Est que Les Scriptes sont-ils tranformes dynamiquement en byte code une fois pour toute ( jusqu'a la prochaine modification ) avant execution ( un peu comme tokeneise le TI-Basic )?

13

non, je connais pas trop les Librairies PHP, Je commence a peine serieusement a m'y mettre.
Tout ce que j'ai fait c'est ecrire un moteur pour un site en PHP. Histoire d'apprendre, j'ai fait mes propres classes
pour generer le DHTML et gerer les Bases de Donnees ( Histoire d'eviter les histoire de Copyright, si jamais je compte me lancer dans la creation de site Web pour des petite entreprises ).

14

andoh_wilfried
: Comme chaque fonction est code sur 1 byte, cela ne correspond pas vraiment a une instruction du processeur.

Je ne sais pas à quoi ressemble le bytecode de Java, mais à mon avis il y a (*très* largement) plus de 256 fonctions/instructions, donc ça ne sera surement pas 1 octet à chaque fois (dans un sens ça reste comparable au basic, mais faut pas oublier que le ti-basic c'est très simple comme format de tokens ^^
Je suppose donc qu'en terme optimisations de code, un language compile ne fait pas plus qu'un lauguage interprete utilsant du byte-code

Comme le langage compilé est transformé en code pour le processeur, on peut lui apporter une dernière "couche" d'optimisations qui sont spécifiques au processeur et qui n'auraient pas beaucoup de sens pour une machine virtuelle (encore que, la machine virtuelle peut avoir ses contraintes); mais toutes les optimisations en amont sont théoriquement appliquables dans les deux cas, oui.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

15

J'ai lu que PHP est un language byte-code tout comme Java.

Je ne sais pas si c'est par défaut, mais avec certaines extensions, je crois qu'on peut demander à PHP de "bytecoder" le script en RAM, ce qui fait que tant qu'il est appelé, il reste "bytecodé". Mais cette info reste à confirmer.
avatar

16

2162.png

#niakniak#

(désolé c'était un post inutile mais indispensable cheeky)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

17

andoh_wilfried :
J'ai lu que PHP est un language byte-code tout comme Java.
C'est vrai, c'est pour ça qu'il te signale les erreurs avant l'exécution.
andoh_wilfried :
non, je connais pas trop les Librairies PHP, Je commence a peine serieusement a m'y mettre.
Bah, disons que GD te permet de faire du dessin (placer des points, des lignes, redimentionner une image...), mais pas de tracer des graphs wink
Il n'y a rien non plus pour evaluer des expressions mathématique...

Mais on peut le faire ! 1824.png n'utilise aucune autre librairie que GD (c'est sur FREE ^^).

Godzil, il est tout pas beau ton graph trinon

2171.png
Le mien, il est plus joli oui tongue
avatar

18

Je t'ai battu :

2175.png wink

(bon ok j'arrete)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

19

Nil :
Je ne sais pas si c'est par défaut, mais avec certaines extensions, je crois qu'on peut demander à PHP de "bytecoder" le script en RAM, ce qui fait que tant qu'il est appelé, il reste "bytecodé". Mais cette info reste à confirmer.

Est-ce que ce n'est pas ce que font APC et Zend Optimizer ?
http://fr2.php.net/manual/en/ref.apc.php
http://www.zend.com/products/zend_optimizer
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

20

J'avais ZendO en tête, effectivement. Mais j'ai préféré éviter de dire quelque chose dont je n'étais pas sûr du tout.
avatar

21

ah, voila, j'ai retrouvé celui que je cherchais : turk mmcache :
http://turck-mmcache.sourceforge.net/index_old.html
Turck MMCache is a free open source PHP accelerator, optimizer, encoder and dynamic content cache for PHP. It increases performance of PHP scripts by caching them in compiled state, so that the overhead of compiling is almost completely eliminated. Also it uses some optimizations to speed up execution of PHP scripts.

Turck MMCache stores compiled PHP scripts in shared memory and execute code directly from it.


sur la page, il y a un bench des différents caches d'opcode php, d'ailleurs ^^

et http://developpeur.journaldunet.com/tutoriel/php/040209php_systemes_cache1a.shtml y'a quelques mots sur les caches d'opcode, à priori (juste survolé le début, pas tout lu )
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

22

J'ai une question pour un tout le monde :

Comment vous faites pour vos sites ?
- vous codez tous vous meme en Php en faisant de l'oriente objet
- vous utiliser une librairie

23

Les 2
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

24

Les deux aussi smile Mais j'avoue que concernant l'objet en PHP, vu que je maitrise plutôt mal la syntaxe, je n'en fait pas beaucoup.
avatar

25

(Je viens de corriger un bogue qui était visible sur le graphique du post nº 17, merci Godzil de l'avoir fait apparaître smile )
avatar

26

Mais de rien ce fus avec plaisir cheeky wink
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

27

Comme je debute j'aimerai bien savoir les Librairies les plus utiles.
Surtout celles qui sont libres meme pour le site d'une boite ( je suppose que c'est a la charge de l'hebergeur )



Parce le premier moteur DHTML que j'ai fait, ne concatenait que de chaines obtenu a partir de fonctions.

Le moteur que j'ai maintenant cree les Objets HTML jusqu'a contruire l'objet HtmlDocument.
Ensuite seulement j'appelle sa methode getParseDocument() pour generer la page HTML.

Ce qui fait qu'on construit une page un peu comme on fait une Boite de Dialogue TIOS ou encore une Interface Graphique en JAVA.

Je trouve ca nettement plus propre et surtout plus simple.

D'ailleur la POO en Php c'est comme en JAVA avec le typage en moins et comme mots cles extends, class uniquement.
On declare une classse par un fichier *.php, et '->' permet d'acceder aux membre d'une classe.

heureusement avec Php 5 on peut maintenant utiliser les mots cles private, public, protect, implements, interfaces.

28

Pkoi ne pas avoir utiliser un moteur de template pour ton truc ?
Ca l'aurait rendu bcp plus puissant je pense (cf Smarty par exemple)

29

mince je suis atrocement decu.

Pas moyen d'affecter une varible en utilisant les references( qui ne sont pas comme des pointeurs en C ).

Ca permet juste d'utiliser le nom de la variable dans une expression, mais pas en tant que left-value( symbole utilise pour affecter une valeur a une variable ).

C'est vraiement dommage, ca complique le boulot de ce qui ont l'habitude de ce genre d'astuce en programmation C.

30

Par rapport aux librairies, j'utilise énormément de trucs de Pear (en particulier tout ce qui est relatif au cryptage), mais c'est dans un domaine d'activité très précis.
avatar