Les meilleurs débats et sondages PHP : langage / outils / scripts etc.
Le 2007-01-20 17:59:10, par Community Management, Community Manager
Bonjour
ma question et la suivante :
Comment bien programmer en PHP ?
Donc si vous avez des conseils, des truc à utiliser/éviter et d'autres choses.
Par exemple :
Code le plus court :
Code le plus rapide :
Merci d'avance
ma question et la suivante :
Comment bien programmer en PHP ?
Donc si vous avez des conseils, des truc à utiliser/éviter et d'autres choses.
Par exemple :
Code le plus court :
Code : |
1 2 3 4 | for ($i=0; $i<count($array); $i++) { echo $array[$i]; } |
Code : |
1 2 3 4 5 | $count = count($array); for ($i=0; $i<$count; $i++) { echo $array[$i]; } |
-
N1busExpert confirméBonjour,
pour ma part :
- Bien indenter le code pour une meilleure lisibilité
- Bien commenter le code , même si ça prend du temps. Tu seras content dans 6 mois d'avoir pris le temps de commenter ton code . . .le 20/01/2007 à 18:14 -
marchaRédacteur
Envoyé par Sub0
qu'une optimisation n'est nécessaire que si il y a un besoin réel et pas
juste hypothétique.
J'ai souvent pensé qu'un code optimisé était en sois meilleur. Mais il est souvent
moins clair, plus difficile à maintenir, et il arrive qu'il soit remplacé par un nouveau
produit avant même d'avoir atteint ses limites.
Mais il est vrai, que c'est un vrai plaisir d'optimiser son code... mais on devrait le
faire que lorsqu'il s'avère que c'est économiquement nécessaire et pas avant !le 24/01/2007 à 16:32 -
Sub0Expert confirméSalut!
• Toujours bien mettre en place un algo, voir un cahier des charges bien pensé avant de se plonger dans le code. Pour cette étape, il est important de connaître les règles de sécurité, quelles peuvent être les failles : http://php.developpez.com/faq/?page=securite
• Perso, je sépare bien les "unités" de mon programme, par exemple :
cfg.php // Constante et variable de configuration
bbd.php // Fonctions d'accès à la base de données
func.php // Diverses fonctions, conversion, traitement
mail.php // Fonctions d'envoi de mail
forms.php // Formulaires html de saisie
etc...
J'inclus les unités les unes aux autres avec Require_once().
• J'utilise les tableaux pour les constantes, variables, données... et la commande global pour les intégrer dans mes fonctions. Par exemple, dans le script "cfg.php", tu trouveras :Code : 1
2
3
4
5
6$cfg['db_server'] = 'localhost'; // Nom du serveur $cfg['db_name'] = 'mybase'; // Nom de la base $cfg['db_table'] = 'membres'; // Nom de la table $cfg['db_login'] = 'root'; // Le login d'accès de la base $cfg['db_pass'] = ''; // Le mot de passe de la base $cfg['linkid'] = ''; // Handle de la connection
Code : 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19Require_Once('cfg.php'); Require_Once('func.php'); //============================================================ // CONNECTION A LA BASE DE DONNEES //============================================================ function OpenBase($first=false){ global $cfg; //---------------------------------------------------------- // Déjà connecté -> Exit //---------------------------------------------------------- if(!empty($cfg['linkid'])) return true; //---------------------------------------------------------- // Test de connection su serveur //---------------------------------------------------------- if(!$cfg['linkid']=@mysql_connect( $cfg['db_server'],
• J'utilise les simples quotes dans tous les cas, excepté pour encadrer les requêtes SQL où j'utilise les doubles quotes, car avec mon editeur PHP, il est possible de choisir une couleur différente. Ainsi, je repère tout de suite où se trouvent les requêtes SQL.
• J'utilise de péréférence des "echo" pour intégrer du code HTML, CSS ou Javascript dans mes scripts PHP. J'évite de fermer les balises PHP (?>ou sinon, je mets tout le code HTML, CSS ou Javascript dans un autre fichier.
• Bien garder à l'esprit que ton code sera probablement lu par d'autres développeurs.le 20/01/2007 à 18:50 -
cedricgirardMembre avertiTrès vaste sujet mais
Je préconise
Code : foreach($array as $valeur) echo $valeur;
Par ailleurs je n'ai pas encore lu les 11 pages de réponses, mais pour moi bien programmer en PHP c'est d'abord
- du code concis, lisible, qui fait uniquement ce qui est utile, des variables/fonctions bien nommées, un code que l'on puisse remanier si le besoin se précise ou qu'il change
- des tests unitaires et fonctionnels
- des règles respectées : register_global à off, oubli des parties qui seront désactivées en PHP6 (long array par exemple), éviter les globals
- coder avec l'affichage des erreurs au max et n'en laisser passer aucune
- capter toutes les erreurs qui surviennent sur un site en production et les corriger (ou en tout cas les gérer) au fur et à mesurele 10/09/2008 à 16:03 -
cedricgirardMembre avertiJe ne vois pas le rapport entre MVC et l'usage d'une URL unique.
Ergonomiquement l'URL unique est une hérésie, surtout maintenant que l'on sait faire des URL qui expriment quelque chose et ne dépendent plus de l'organisation technique du serveur.le 10/09/2008 à 16:07 -
Benjamin DelespierreExpert éminentLa solution que j'ai trouvé à ce problème est de désactiver les updates des modules qui marchent parfaitement
Et ce pour 2 raisons:
- C'est vrai, la gestion des plugins et des dépendances dans Eclipse peut devenir une vraie galère
- Une fois qu'on à un environement stable et correctement configuré, on n'a pas forcément envie de se prendre 5 updates par semaine dans les dents.
ça fait deux ans que j'ai pas updaté PDT et je touche du boisle 27/06/2011 à 15:30 -
sekaijinExpert éminentça n'optimise rien du tout un if avec ou sans accolade c'est le même temp de traitement. les différentes syntaxe de if sont toute identique le compilateur php va générer le même code exécutable.
de façon générale la présence d'accolade ne change pas le temps d'éxécution
en fait la seule différence que peut introduire la présence d'accolades dans du code est la création d'un contexte de portée des variables. soit quelque chose de l'ordre de la micro seconde.
le pire dans tes exemples c'estCode : return = (empty($val)) ? true : false;
Dans ce code tu appelle la fonction empty en lui passant un variable. cette fonction var retourner true ou false.
l'opérateur ternaire va alors évaluer cette valeur et si elle vaut true va retourner la première valeur sion la seconde. celle-ci sera placé dans return.
Alors queCode : return = empty($val)
il ne faut pas confondre le code concis et optimisation. souvent un code compact n'est pas le plus optimal.
A+JYTle 03/01/2014 à 20:13 -
SpartacusplyMembre expertÉtant donné que php est utilisé pour produire des pages webs dynamiques, ne serait-il pas plus judicieux de n'utiliser que du php sur une page ?- Quand c'est un array, je rajoute "_a" au bout du nom de la variable ou du nom de la fonction.Je rajoute des "\n" dans les fonctions d'affichage, afin que le code source de la page soit plus lisible.
Code : 1
2
3$html = '<form action="avis.php" method="post" name="avis"> <label for="pseudo">Pseudo</label> <input type="text" name="pseudo" size="106" maxlength="30"><br></form>';
le 01/12/2014 à 15:48 -
fadexMembre régulierMerci
Donc est ce qu'il y a des normes à suivre, parce que parfois on arrive à des situations ambiguës (usine a gaz).
Par contre en java il existe plusieurs solutions permettant de structurer la programmation.
Donc si vous avez des exemples d’architecture ou des projets (perso) qui se base sur des architectures (MVC par exemple).le 22/01/2007 à 10:57 -
Sub0Expert confirméle 22/01/2007 à 12:49