Le langage PHP a été inventé en automne 1994 par Rasmus Lerdorf, lorsqu’il a créé ce langage, il comptait en faire une utilisation banale : garder les traces des personnes qui venaient consulter son CV sur Internet. Beaucoup d’internautes lui demandèrent ce programme, alors Rasmus Lerdorf mit en ligne en 1995 la première version de ce langage qu’il baptisa Personal Home Page v1.0, plus tard renommé Préprocesseur Hypertexte.
Le PHP est un outil puissant pour la réalisation de sites web intranet et extranet qui permet de rendre des sites web dynamiques. Mais la création de page web n’est pas la seule utilité du PHP. Sa capacité permet aussi de gérer des images, de créer des fichiers PDF (acrobat)… Tout simplement, il permet de sortir un site Internet de l’ordinaire !
Qu’apporte-t-il à votre site Internet et pourquoi utiliser PHP ?
Depuis quand existe-t-il ?
De nombreuses questions à se poser sur le PHP, nous allons tenter de répondre à vos interrogations à travers cet article…
Lire la suite :
# Wikipedia
Posté par _seb_ . Évalué à 10.
La page de Wikipedia donne bien plus d'information (et en plus avec beaucoup plus de précision): PHP
Pour information, Rasmus Lerdorf baptisa le langage PHP/FI (pour Personal Home Page Tools/Form Interpreter).
# Pourquoi ce lien et maintenant ?
Posté par SpaceFox (site web personnel, Mastodon) . Évalué à 10.
Pourquoi partager un lien qui a maintenant plus de huit ans et demie – une éternité en terme d'informatique ?
Pour donner un repère temporel, quand l'article a été écrit, la version courante de PHP était la 5.2, il n'y avait ni trait ni espace de noms ni rien de plus moderne, et PHP 4 était déprécié depuis moins de 6 mois.
La connaissance libre : https://zestedesavoir.com
# Autre lien intéressant
Posté par flan (site web personnel) . Évalué à 4.
Presque aussi vieux, mais très intéressant également : https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
[^] # Re: Autre lien intéressant
Posté par SpaceFox (site web personnel, Mastodon) . Évalué à 8.
Et surtout très daté en plus de sa mauvaise foi. PHP Sadness est plus intéressant à mon sens, parce que factuel et surtout maintenu à jour.
La connaissance libre : https://zestedesavoir.com
[^] # Re: Autre lien intéressant
Posté par Christie Poutrelle (site web personnel) . Évalué à 1.
Je ne le connaissais pas celui-là ! Merci !
# réponse aux questions
Posté par totof2000 . Évalué à -6.
de la lenteur
Pour ralentir votre site trop rapide, pour soutenir la demande en serveurs physiques/virtuels, pour ajouter de la complexité à votre site web/appli pour être sur que votre client ne vous lachera pas du jour au lendemain, ou que votre patron ne vous virera pas
On s'en fiche.
# Perte de temps
Posté par Christie Poutrelle (site web personnel) . Évalué à 10. Dernière modification le 16 juillet 2018 à 15:14.
Cet article est plein d'informations qui sont complètement fausses, ou plus d'actualité depuis plusieurs années. Il faut arrêter de propager des fausses informations ! Que l'on aime PHP ou pas (c'est loin d'être le meilleur langage du monde) il faut au moins lui redonner ce qui lui revient.
Ohlalalala, déjà rien qu'ici, cette phrase ne veut rien dire. Bon, pour commencer, PHP n'est plus interprété depuis sa version 7, donc quelques années, de plus avant il pouvait ne plus l'être dès lors qu'on installait APC (ce que tout le monde faisait). Tout ce qu'il y a après le mot "interprété" dans cette phrase est incompréhensible.
En fait, j'ai arrêté de le lire ici. La personne qui a écrit cet article ne doit pas connaître grand chose ni à PHP, ni au web en général.
En même temps, ça date de 2009. Faut arrêter ce genre de blagues à troll :)
[^] # Re: Perte de temps
Posté par Marotte ⛧ . Évalué à 3.
Comment ça ? Tu aurais une source à me fournir pour étayer cette affirmation ?
[^] # Re: Perte de temps
Posté par Christie Poutrelle (site web personnel) . Évalué à 10.
J'ai lu le code, personnellement, et même joué avec. Il y a une phase de lexing puis de parsing, tu peux le voir notamment grâce aux fichiers de définition de la grammaire:
Pour le lexer: https://github.com/php/php-src/blob/4887357269107ed669463c4b95bd755fbbb52490/Zend/zend_ini_scanner.l
Pour le parser: https://github.com/php/php-src/blob/4887357269107ed669463c4b95bd755fbbb52490/Zend/zend_ini_parser.y
Ensuite cette phase est décorrélée de la Zend engine, qui est devenue une vraie VM à part entière, qui fonctionne avec un bytecode en entrée (les OPCodes, c'est le même mot que pour les autres VM par ailleurs).
Je pourrais aller plus loin, notamment sur les passes d'optimisation qu'il fait à la compilation, comme le Dead Code Elimination et quelques autres, sur les optimisations basées sur l'utilisation de la stack plutot que la heap faite par la VM etc…
Pour voir le code du compilateur (partiel) basé sur l'AST produit par la phase de parsing: https://github.com/php/php-src/blob/4887357269107ed669463c4b95bd755fbbb52490/Zend/zend_compile.c
Après pour voir tout ce qu'elle fait en terme d'optimisation, et bien faut l'analyser ce code, et là ça devient une tâche un peu plus longue que donner quelques liens.
Toutes ces modifications ont été apportés par PHP 7 à sa sortie, c'est la grosse différence avec PHP 5.x. Pour information l'extension APC qui existe depuis tellement longtemps que j'en oublie mes mots (on l'utilisait depuis PHP 5.3 ici mais ça existe depuis plus longtemps de mémoire) apportait déjà le caching du bytecode au premier hit pour éviter d'avoir justement la phase de parsing à chaque hit. En réalité PHP n'était plus réellement interprété depuis PHP 5 car il passait déjà par la compilation en une suite d'OPCode avant l'exécution (mais à la différence de PHP 7 il n'avait pas de lexer/parser standard, du code custom à la place, pas de REGEX etc..).
D'ailleurs chose intéressante, elle est très rapide cette VM, j'ai pas de benchmark récents à te montrer, mais bon, vu qu'à chaque version elle gagne 20% de performances brutes sur les benchmarks de Phoronix, et que déjà il y a quelques année elle se montrait plus rapide que la VM de Python (attention, no troll, je suis conscient que les benchmarks se focalisent toujours sur des algorithmes précis, et qui parfois sont mal implémentés dans tel ou tel langage) - ce qui paraît logique sur un certain nombre de cas d'utilisations parce que PHP type statiquement de plus en plus de choses, et là où le dynamisme disparaît, tout devient plus simple à exécuter - Python reste extrêmement dynamique, beaucoup plus que PHP (d'ailleurs il ressemble plus à JavaScript sur ce point).
[^] # Re: Perte de temps
Posté par ckyl . Évalué à 3.
Ahhhhh :)
Ah oui en fait non !
[^] # Re: Perte de temps
Posté par Christie Poutrelle (site web personnel) . Évalué à 1. Dernière modification le 17 juillet 2018 à 11:00.
De mémoire sur certains benchmarks, et Python faut pas se leurrer, c'est un langage sympa mais c'est lent. Et puis de toute façon tout langage ou on peut faire du pansement de singe est à mettre à la poubelle.
[^] # Re: Perte de temps
Posté par xcomcmdr . Évalué à 2.
Adieu Ruby. :'(
(bon je ne l'utilisais déjà plus à cause du typage dynamique qui m’énerve).
"Quand certains râlent contre systemd, d'autres s'attaquent aux vrais problèmes." (merci Sinma !)
[^] # Re: Perte de temps
Posté par Christie Poutrelle (site web personnel) . Évalué à 1.
Adieu JavaScript.
[^] # Re: Perte de temps
Posté par Thomas Douillard . Évalué à 1.
Bonjour typescript?
[^] # Re: Perte de temps
Posté par Christie Poutrelle (site web personnel) . Évalué à 5.
Je n'écris plus une seule ligne de JavaScript depuis plus d'un an grâce au TypeScript. Le système de typage qu'il rajoute à ECMA-Script est juste magnifique, types somme, types union, alias de type, analyse statique, c'est tout bonnement un pur bonheur !
# PHP
Posté par Marotte ⛧ . Évalué à 8. Dernière modification le 16 juillet 2018 à 15:29.
Tu peux avoir un script PHP qui génère du texte. Dans ce cas il n’y a pas de HTML, on pourrait dire (même si c’est pas très clair…) que la page ne contient que du PHP. Non ?
Là encore c’est assez bizzarement formulé… je trouve.
Alors là par contre attention. Les pages web dynamiques existaient avant l’apparition de PHP. On parle de CGI. Le langage de prédilection pour ces scripts CGI était le Perl, un langage interprété créé en 1987.
L‘exemple est mal choisi. Pour afficher l’heure, on peut se reposer sur un script client-side, en Javascript. Pas besoin de script server-side en PHP pour ça. Il me semble qu’on ne parle pas de web dynamique lorsqu’il s’agit seulement de script côté client, bien qu’il s’agisse de contenu effectivement dynamique.
Ça c’est surtout grâce au module Apache pour PHP, qui facilite sa mise en place, en le mettant à porté du premier venu. Parce que sinon, aucun langage ne « s’harmonise » plus ou moins bien avec HTML. Des produits comme EasyPHP, qui permet de mettre en place une stack Apache/PHP/MySQL en trois clics sous Windows ont aussi pas mal participé au succès du langage PHP, àmha.
Il a mis la création de contenu web dynamique à la portée du plus grand nombre mais comme je l’ai déjà écrit plus haut, c’était déjà possible de créer du contenu dynamique avant l’apparition de PHP.
[^] # Re: PHP
Posté par mazarini . Évalué à 3.
J'ajouterai que les hébergements proposaient souvent PHP/MySQL. En particulier Free qui a proposé à ses débuts un hébergement PHP3/MySQL gratuit.
A mes yeux, le succès de PHP, c'est EasyPHP couplé à des hébergements mutualisés bon marché à la fin des années 90. J'ajouterai des usines à gaz codées avec les pieds comme PHP-Nuke.
[^] # Re: PHP
Posté par Sytoka Modon (site web personnel) . Évalué à 3. Dernière modification le 16 juillet 2018 à 18:25.
C'est clair que le PHP du début n'était qu'un sous sous Perl. En pratique, ce langage n'aurait jamais du vraiment décoller. C'est aussi pour moi EasyPHP sous Windows qui a fait que cela a marché.
[^] # Re: PHP
Posté par Sytoka Modon (site web personnel) . Évalué à 4.
C'était même bien mieux en Perl. DBI existait déjà et c'était que du bonheur alors que le code PHP était rempli de mysql_*… Une véritable catastrophe ;-)
Bref, le succès de PHP est amusant car clairement, il n'apportait techniquement rien sur Perl, au contraire (sauf que comme c'était un sous langage, son mode safe était certainement plus sur). Comme quoi l'emballage est un élément important.
[^] # Re: PHP
Posté par Marotte ⛧ . Évalué à 4.
Le propre de PHP, selon moi, c’est d’être totalement monolithique… du moins, ça fait déjà le café sans même aller voir du côté de PEAR.
Il est plus accessible pour le novice en programmation. Perl est plus « beau », et plus puissant, mais PHP se contente de reposer sur des paradigmes de programmation plus basiques. PHP est plus simple. Pas de manipulation de pointeurs par exemple, on peut faire simplement des listes de listes en PHP, là où en Perl on aura des listes de références (vers des listes), la mécanique sous-jacente du passage par référence est exposée, en PHP elle est cachée. Le fait que beaucoup de choses en Perl peuvent être implicites, qu’il n’y a juste pas besoin de les écrire… c’est là une fonctionnalité super-appréciable du langage, mais faut déjà avoir un peu d’expérience en programmation pour en profiter pleinement. Àmha.
J’ai découvert Perl sur le tard. Clairement, je regrette de ne pas avoir connu plus tôt… même si mon langage de prédilection est Python
Ceux qui utilisent beaucoup Perl : Perl 6 ? ou on reste sur la version 5 ?
Pour Python il faut clairement pousser la version 3 selon moi. La 2 a de grosses lacunes que la 3 corrige. Pour Perl j’ai l’impression que la 5 a encore de beau jours devant elle, me trompé-je ?
[^] # Re: PHP
Posté par Sytoka Modon (site web personnel) . Évalué à 6. Dernière modification le 16 juillet 2018 à 23:42.
Attention, je compare le PHP et le Perl de l'époque ;-)
Sinon, on ne peut pas comparer Python 2 vs Python 3 avec Perl 5 vs Perl 6. Python 3 est une évolution alors que Perl 6 est un nouveau langage avec très peu de chose en commun si ce n'est les siguils et la philosophie d'être piloté par un linguiste qui aime la pluralité ;-) Les regex sont ré-inventé, la syntaxe change…
Perl6 n'est pas encore en standard partout et la VM (oui Perl6 tourne en VM) n'est pas encore complètement optimisé. De son coté Perl5 a repris du développement il y a quelques années après un trou de presque 10 ans et pas mal de truc sympa s'y font. Il reste très performant.
J'avoue que les machins à la Javascript ou Python ou les API pètent régulièrement, cela finit par gonfler. Perso, je suis encore sous Perl5 ou mes programmes d'il y a 15 ans tournent toujours pareil et les nouveaux profitent des nouveaux trucs. Je m'amuse sur quelques scripts Perl6 mais je ne vois pas déployer cela en production sur 200 machines utilisateurs pour le moment.
# Compte créé le 13 juillet...
Posté par Paul POULAIN (site web personnel, Mastodon) . Évalué à 6.
L'objet n'est-il pas d'améliorer le classement pas les moteurs, linuxfr étant très bien classé, un lien qui pointe depuis linuxfr, ça améliore le classement.
si c'est ça, c'est raté : un journal négatif n'apparaît pas aux robots si je ne m'abuse.
[^] # Re: Compte créé le 13 juillet...
Posté par smumu . Évalué à 1.
Mais pourquoi améliorer le classement d'un article datant de 2009 ? Surtout que le site en question propose des articles plus récents (le dernier date du 28 juin 2018 à l'heure où j'écris ces lignes).
[^] # Re: Compte créé le 13 juillet...
Posté par Kerro . Évalué à 6.
Quand il y a « concept » dans le nom d'une entreprise ou d'un site, ça sent le truc foireux fait
par des foireux
.La réponse à ta question est là : par des foireux.
[^] # Re: Compte créé le 13 juillet...
Posté par Thierry Thomas (site web personnel, Mastodon) . Évalué à 2. Dernière modification le 17 juillet 2018 à 10:45.
J’ai eu récemment un bon d’achat chez Leclerc, suite à un remboursement, et on m’a indiqué qu’il était valable dans tous les supermarchés du groupe, ainsi que dans les « concepts ». Je me suis fait précisé, et j’ai appris que ça n’avait plus rien à voir avec de la philosophie, mais que les concepts étaient des magasins spécialisés !
[^] # Re: Compte créé le 13 juillet...
Posté par _seb_ . Évalué à 2.
Un admin pourrait confirmer cela ?
Est-ce le cas aussi sur les page "Liens" du site linuxfr ?
[^] # Re: Compte créé le 13 juillet...
Posté par Abathur . Évalué à 10. Dernière modification le 16 juillet 2018 à 18:24.
Pas besoin d'un admin pour cela, il suffit de regarder le code source de la page. Et on peut effectivement voir:
La page ne sera pas référencée (le journal) et les liens de la page ne seront pas suivis.
[^] # Re: Compte créé le 13 juillet...
Posté par passant·e . Évalué à 3. Dernière modification le 18 juillet 2018 à 12:01.
Pourtant la page est bien référencée sur Google.
Google est arrivé avant que le score ne soit négatif?
-> "Tout ce qu'il faut savoir sur le langage PHP"
Je trolle dès quand ça parle business, sécurité et sciences sociales
[^] # Re: Compte créé le 13 juillet...
Posté par SpaceFox (site web personnel, Mastodon) . Évalué à 2. Dernière modification le 18 juillet 2018 à 12:10.
Je confirme, et la page en question liée arrive juste derrière.
La connaissance libre : https://zestedesavoir.com
[^] # Re: Compte créé le 13 juillet...
Posté par Abathur . Évalué à 10.
On peut voir la version en cache qui a été référencé: https://webcache.googleusercontent.com/search?q=cache:oy6oo93-SF8J:https://linuxfr.org/users/frison/journaux/tout-ce-qu-il-faut-savoir-sur-le-langage-php+&cd=1&hl=fr&ct=clnk&gl=fr
Journal posté à 13:55 UTC+02, Google est passé à 14:01:35 UTC+02. Et le journal avait la note 0.
Il faudrait surement changer la logique d'activation du noindex/nofollow…
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.