मैं एक नाम (config_name) और एक मान (config_value) के साथ एक कॉन्फ़िगरेशन तालिका का उपयोग करता हूं। मैं एक सहायता फ़ील्ड भी जोड़ता हूं ताकि उपयोगकर्ता देख सकें कि नाम/मूल्य जोड़ी का उद्देश्य क्या है, या इसका उपयोग कहां किया जाता है।
CREATE TABLE config (
config_id bigint unsigned NOT NULL auto_increment,
config_name varchar(128) NOT NULL,
config_value text NOT NULL,
config_help text COMMENT 'help',
PRIMARY KEY (config_id),
UNIQUE KEY ix_config_name (config_name),
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
फिर PHP कोड के बाद एक कुंजी के मान को पुनः प्राप्त करता है, या एक खाली स्ट्रिंग देता है। मान लें कि $ डीबी एक खुला डेटाबेस कनेक्शन है। सभी प्रविष्टियों को मामले को कम करने के लिए मजबूर किया जाता है।
function getConfigValue($name) {
$retval='';
$db = $this->db;
$sql = 'select config_value from config where LOWER(config_name)="'.strtolower($name).'"';
$result = $db->Query($sql);
if ($result) {
$row = $db->FetchAssoc($result);
$retval = $row['config_value'];
}
return $retval;
}
इस उदाहरण में सभी mysql/php, लेकिन सामान्य सिद्धांत बनी हुई है।
wouldn होगा
और कर
select * from myConfigView
:)लेकिन फिर से, कोई कारण नहीं क्यों एक तालिका का उपयोग करने के लिए नहीं: आप इस तरह एक हार्ड-कोडेड दृश्य बना सकते हैं यह अनुप्रयोग परत द्वारा संभाला जाना बेहतर होगा? यह केवल एक पाठ फ़ाइल हो सकती है जहां आप मुख्य मूल्य जोड़े को पढ़/लिख सकते हैं। डेटाबेस का उपयोग करने के लिए कोई विशेष कारण है? – cctan