Pendant longtemps, je me sers de la mise en forme de base suivantes pour les requêtes SQL dans mon PHP:Existe-t-il un moyen plus "standard" d'exécuter des requêtes SQL en PHP sans utiliser de framework?
$sql = "SELECT * FROM `user-data` WHERE `id` = '".$id."' LIMIT 1;";
$fn = mysql_fetch_assoc(mysql_query($sql));
Bien que cela fonctionne parfaitement, il peut être vraiment compliqué pour les bits plus de code, et quelque chose de profond à l'intérieur de ma conscience grince la concaténation des cordes chaque fois que je le fais. Pourtant, cela fonctionne et je l'utilise presque partout sans problèmes majeurs. (C'est un exemple tame, je ne suis pas assez dense pour transmettre des données utilisateur directement dans une chaîne SQL sans l'échapper d'abord, etc.)
Ce que je voudrais faire est quelque chose d'un peu plus orienté objet, mais Je ne suis pas certain de la meilleure approche. Ce serait sympa de pouvoir juste insérer sql-> insert ($ values [, $ where, $ extra]); ou quelque chose de similaire, en utilisant les types associatifs naturels de PHP pour passer dans les chaînes de requête d'une manière plus simplifiée. Moins flexible? Oui. Plus lisible? Heck oui, et plus difficile de faire des erreurs de syntaxe "silencieuses" à cela.
Quelle est la position de la communauté à ce sujet? Quelles approches avez-vous envisagées pour ce problème qui ont été les plus efficaces pour les projets sur lesquels vous travailliez? Cela n'a pas d'importance, mais personnellement, je ne fais pas beaucoup plus compliqué que SELECTs, INSERTs et UPDATEs, avec l'imbrication occasionnelle de sous-requêtes, mais c'est surtout parce que ma fonction SQL ne fait pas de procédures stockées.
Même si je suis tout à fait conscient qu'il ya forcément des cadres qui existent pour résoudre ce problème, je suis en train d'éviter ces réponses. Je voudrais savoir comment on pourrait accomplir cela en commençant par une installation PHP à la vanille, en mettant l'accent sur l'examen du code sous-jacent qui le rend possible. –