OVH Cloud OVH Cloud

Fonctionnement de PHP

19 réponses
Avatar
mmontig
Bonjour,

Je souhaiterai trouver des sites (ou même un site bien :-)) qui
explique comment fonctionne php5, pas comment faire des pages, mais
comment ca fonctionne derriére (s'il compile, interpréte...), comment,
quel fichier ca génére si c'est de la compilation ?

Merci
Marie

10 réponses

1 2
Avatar
loufoque
Montigny a dit le 30/09/2004 16:50:
c'est de la compilation ?
Non.


Avatar
Cleo
Je souhaiterai trouver des sites (ou même un site bien :-)) qui
explique comment fonctionne php5


Regarde peut-être http://www.commentcamarche.net/php/phpintro.php3
Ca n'a cependant pas l'air dédié à php5.

A suivre ...

Avatar
Marc

Montigny a dit le 30/09/2004 16:50:

c'est de la compilation ?


Non.


heu, moi je dirai si, il y a des la compilation, mais
pas génération de code objet, suivi d'une edition des
liens, mais juste une compilation vers du code intermédiaire
qui est ensuite interprété (exécuté).


Avatar
loufoque
Marc a dit le 01/10/2004 00:05:
heu, moi je dirai si, il y a des la compilation, mais
pas génération de code objet, suivi d'une edition des
liens, mais juste une compilation vers du code intermédiaire
qui est ensuite interprété (exécuté).


Donc ce n'est pas de la compilation.
La compilation transforme en langage machine, PHP transforme en bytecode.
Rien à voir.

Avatar
Armel FAUVEAU
Bonjour,

La compilation transforme en langage machine,


Pas nécessairement.
Par compilation, on entend la traduction d'un langage évolué vers un langage
moins expressif.

PHP transforme en bytecode.


Oui. Il y a donc bien compilation.

Plus précisement, PHP peut-être concidéré comme un langage compilé à la
volée depuis PHP4. Ce n'était pas le cas pour les branches antérieures.

HTH,

Armel.

Avatar
Marc

Marc a dit le 01/10/2004 00:05:

heu, moi je dirai si, il y a des la compilation, mais
pas génération de code objet, suivi d'une edition des
liens, mais juste une compilation vers du code intermédiaire
qui est ensuite interprété (exécuté).



Donc ce n'est pas de la compilation.
La compilation transforme en langage machine, PHP transforme en bytecode.
Rien à voir.


et Java compile ou pas ?
- il me semble avoir vu dans les erreurs de php des messages
de type "compilation error"
- tu sembles confondre génération de code objet et compilation.
- la compilation ce n'est que prendre un source dans un langage donnée
et le transformer en un arbre afin d'optimiser les temps d'execution.
- certains shell executent ligne par ligne sans compilation,
- d'autres , perl, Java Python passent par du pseudo-code.


Avatar
Marc

Marc a dit le 01/10/2004 00:05:

heu, moi je dirai si, il y a des la compilation, mais
pas génération de code objet, suivi d'une edition des
liens, mais juste une compilation vers du code intermédiaire
qui est ensuite interprété (exécuté).



Donc ce n'est pas de la compilation.
La compilation transforme en langage machine, PHP transforme en bytecode.
Rien à voir.


tient, j'ai trouvé ca dans les sources de php :

#define E_ERROR (1<<0L)
#define E_WARNING (1<<1L)
#define E_PARSE (1<<2L)
#define E_NOTICE (1<<3L)
#define E_CORE_ERROR (1<<4L)
#define E_CORE_WARNING (1<<5L)
#define E_COMPILE_ERROR (1<<6L)
#define E_COMPILE_WARNING (1<<7L)
#define E_USER_ERROR (1<<8L)
#define E_USER_WARNING (1<<9L)
#define E_USER_NOTICE (1<<10L)
#define E_STRICT (1<<11L)

sans compter les zend_compile.* et les zend_execute pour
l'execution de l'arbre.


Avatar
mmontig
J'ai trouvé de la doc sur asp.net qui expliquait que l'html était
interprété (logique!!!) mais, que les scripts en asp étaient compilés
et qu'on pouvait même en faire des .dll pour plus de sécurité.
Est ce à peut prés le meme fonctionnement avec php5 ? Car je sais
qu'avec php4, tout était interprété et "transformé" en HTML mais, là,
pas vraiment d'explication sur la maniére de fonctionner et surtout de
proteger son code!
Merci
Marie

loufoque wrote in message news:<415c9719$0$19116$...
Marc a dit le 01/10/2004 00:05:
heu, moi je dirai si, il y a des la compilation, mais
pas génération de code objet, suivi d'une edition des
liens, mais juste une compilation vers du code intermédiaire
qui est ensuite interprété (exécuté).


Donc ce n'est pas de la compilation.
La compilation transforme en langage machine, PHP transforme en bytecode.
Rien à voir.



Avatar
Marie Montigny
J'ai effectivement regarder cette page (et toutes les autres du site),
ainsi que la doc sur php.net ... mais, aucune ne m'apporte la réponse à mes
questions.
Je vais essayer d'aller dans une librairie voir ce qu'ils disent dans le
bouquins!
Marie

"Cleo" a écrit dans le message de
news:415c4082$0$32508$
Je souhaiterai trouver des sites (ou même un site bien :-)) qui
explique comment fonctionne php5


Regarde peut-être http://www.commentcamarche.net/php/phpintro.php3
Ca n'a cependant pas l'air dédié à php5.

A suivre ...



Avatar
cmeresse
loufoque wrote in message news:<415c9719$0$19116$...
Marc a dit le 01/10/2004 00:05:
heu, moi je dirai si, il y a des la compilation, mais
pas génération de code objet, suivi d'une edition des
liens, mais juste une compilation vers du code intermédiaire
qui est ensuite interprété (exécuté).


Donc ce n'est pas de la compilation.
La compilation transforme en langage machine, PHP transforme en bytecode.
Rien à voir.


Mouais c'est un peu jouer sur les mots.
Par extention on appelle tout de même ca de la compilation. On dit
bien qu'on compile du java... Je ne connais pas de terme pour dire
"generer le bytecode".

Christophe


1 2