Question bête d'un "vieux" novice...

Eléphanteau du PHP | 14 Messages

03 févr. 2009, 19:22

Bonjour tout le monde,

J'arrive directement de 8 ans d'hibernation concernant les technologies web (et oui!).
Et puisqu'il m'est "donné" quelques temps de libre, j'en profite pour tâter du php (en tout bien tout honneur).
Ainsi ais-je commencé la lecture d'un vieux bouqin
(2001) : "Php professionnel" ed WROX
qui trainait dans ma bibliothèque sans avoir jamais été lu. Et même si cela concernait la tout jeune version 4 de php, je me dit que cela constitueras une excellente première mise en bouche, avant la prochaine salve d'achat "bibliotech".

J'ai cru comprendre que php interprétait le code qui lui était présenté par le serveur web dès que celui ci rencontrait les balises <?php ?> et qu'il lui rendait des données purement HTML. Or voici que je commence mes première bidouilles avec php-cli et que lorsque je décide de porter tout ceci sur mon serveur, aucun retour chariot "\n" ne semble éfficace. Après un examen attentif des exemples du dit bouqin je m'aperçois effectivement qu'il est toujours fait mention des balises <br>\n pour effectuer ce retour chariot.
Aussi, je me pose une première question (sûrement stupide) :
"Pourquoi php dans son travail d'interprétation ne substitue-t-il pas les \n en de simple <br>?"

C'est sûrement une question qui a du être rabattue des dizaines de fois, mais je n'ai pas vu de réponse à ce sujet.
"Errare humanum est, perseverare diabolicum"

ViPHP
ViPHP | 1380 Messages

03 févr. 2009, 20:00

Bonsoir fredmj et bienvenue.

Tu dois voir PHP comme un "moteur" qui permettent le traitement des informations, son stockage et son affichage. Ce dernier point n'étant pas limité au html. Il doit donc rester généraliste, hors contraintes de présentation. Il est, par ailleurs, fortement recommandé de dissocier traitement et affichage pour des raisons de conception et de maintenance.

Bonne continuation dans ta reprise...
ripat

ViPHP
ViPHP | 4039 Messages

03 févr. 2009, 21:00

A noter que php 4, c'est du tout vieux maintenant..
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

03 févr. 2009, 23:38

Et même si cela concernait la tout jeune version 4 de php,
je me dit que cela constitueras une excellente première mise en bouche,
avant la prochaine salve d'achat "bibliotech".
Sans vouloir te pousser à la consommation (bien qu'en période de crise, il faille la relancer),
je t'encouragerai vraiment à acquérir un bouquin sur PHP 5.

Les différences sont nombreuses et contrairement à ce que l'on entend parfois,
ne concernent pas exclusivement la programmation orientée objet.

Certaines notions essentielles, certains fondamentaux,
ont subi un nettoyage en profondeur entre PHP4 et PHP5.
Je pense notamment aux superglobales.
Mais ce n'est qu'un exemple.

Aussi je me permets de te recommander l'excellllllllllent ouvrage de notre ami Cyruss :
"PHP 5 avancé" par Eric Daspet et Cyril Pierre de Geyer :pouce:

Fais attention à bien choisir la dernière édition... ;)

Mammouth du PHP | 991 Messages

04 févr. 2009, 00:22

Ou encore consulter le site du zéro , qui est tres bien fait

http://www.siteduzero.com/tutoriel-3-14 ... c-php.html
DevOps, Symfony4, Hoa

ViPHP
AB
ViPHP | 5818 Messages

04 févr. 2009, 03:20

Oui ne t'attardes pas trop sur un bouquin traitant de php4. Même si tu trouveras des éléments de bases, de nombreuses fonctions très pratiques (sans compter le mode objet qui a été remanié) sont apparues avec php5 rendant les scripts beaucoup plus fluides.
Et puis les configurations serveur par défaut ont également changés comme global register désactivé ainsi que magic quotes gpc par exemple.
Bref si ce n'est pas par pure curiosité et que tu comptes de nouveau développer, laisse tomber php4 et lis directement les sujets traitant de php5.

Eléphanteau du PHP | 14 Messages

07 déc. 2010, 18:33

Merci à tous pour ces conseils.
Exit donc le php v4.
"Errare humanum est, perseverare diabolicum"

Eléphant du PHP | 447 Messages

07 déc. 2010, 21:20

...
"Pourquoi php dans son travail d'interprétation ne substitue-t-il pas les \n en de simple <br>?"
...
Parce qu'il n'y a pas lieu de le faire dans ce cas. Essaie dans ta console d'exécuter le code suivant:
<?php
echo '1. test \n';
echo '2. test < br / >';
echo "3. test \n";
echo "4. test < br / >";
?>
A l'affichage ça donne:

Code : Tout sélectionner

$ php test.php 1. test \n2. test < br / >3. test 4. test < br / >$
Comme tu vois seul le 3 produit le résultat escompté! D'une part parce que tu es dans une console et que le html ne sera pas interprété , et d'autre part parce que si tu veux interpréter les caractères spéciaux comme un LF il te faut les placer entre guillemets et non entre apostrophes.

Sinon pour un fichier qui génère du html (qui sera interprété par l'application prévue à cet effet) il y a un fonction intéressante à connaître: nl2br
Insère un retour à la ligne HTML à chaque nouvelle ligne
Probably (only a) Human Problem?