Une question de longue date pour moi a été: quand dois-je stocker des données (valeurs réelles) dans une table de base de données, et quand dois-je les stocker directement dans le code?
Le consensus incalculable a généralement été comme tel (*):
S'il s'agit d'une seule variable ou d'une structure simple, ou d'un tableau de quelques valeurs, mettez les données directement dans le code.
[* le consensus a été débattu dans les commentaires et les réponses, mais en gros je voulais une sorte de prémisse pour relancer la question, alors n'hésitez pas à la contester et à l'améliorer ]
Exemple:
$number = 44;
$colors = array("blue", "yellow", ... "mauve");
S'il contient des centaines + de lignes de données du même type, utilisez une base de données.
Mais il semble y avoir une zone grise; qu'en est-il des cas qui ne sont pas si clairs? À quels facteurs et facteurs faut-il faire attention pour prendre une décision?
Exemple:
supposons que votre entreprise utilise 10 à 15 types différents de cadres de moteurs pouvant être représentés par "412T". Vous en avez environ 30 et ils changent rarement. Vous pouvez soit créer une table DB pour ceux-ci, soit les coder en dur dans une base de données. Dans ce cas, les moteurs sont des choses statiques et physiques qui ne sont pas susceptibles de changer souvent.
Les conserver dans le code les soumet au contrôle de code source, où dans une base de données, les modifications de base de données ne sont généralement pas suivies. Mais les conserver dans une base de données libère (sépare) le code des données.
Un autre exemple (réel) que je peux utiliser est ma question: /programming/26169751/how-to-best-get-the-data-out-of-a-lookup-table (actuellement 48 lignes de données d'option).
global_constants.h
fichier).