3 روش برای ایجاد و فراخوانی Setting/Config. نرم افزار

YPY

عضو جدید
سلام،
میخوام 3 روش برای ایجاد و فراخوانی تنظیمات(/پیکربندی) نرم افزارهای تحت وب معرفی کنم که هر روش در جای خودش مفید و قابل استفاده هستش...

روش اول:
استفاده از متغیر(یا آرایه): تمامی تنظیمات بصورت متغیر در یک/چند فایل PHP ذخیره و در صفحات ضمیمه(Include) می شوند:
نرم افزار کوچیک/سبک:
PHP:
$Host= '127.0.0.1';
$Port= 3306;
$Username= 'root';
$Password= 'xxxxx';
$Type= 'MySQL';
$Engine= 'MyISAM';
$CharacterSet= 'utf8';
$Database= 'database';
$Prefix= 'xxxxx_';
نرم افزار بزرگ/سنگین:
PHP:
$Ary_Tanzimat= array();
# Software
$Ary_Tanzimat['Software']['Name']= 'xxxxx';
$Ary_Tanzimat['Software']['Description']= 'xxxxx';
$Ary_Tanzimat['Software']['Version']= '1.0.0';
$Ary_Tanzimat['Software']['Producer']= 'xxxxx';
$Ary_Tanzimat['Software']['Copyright']= '(c) 1388/2009 xxxxx. All rights reserved.';
$Ary_Tanzimat['Software']['License']= 'Gnu/GPL';
$Ary_Tanzimat['Software']['Email']= 'Name@Domain';
$Ary_Tanzimat['Software']['Link']= 'http://domain';
# Database
$Ary_Tanzimat['Database']['Host']= '127.0.0.1';
$Ary_Tanzimat['Database']['Port']= 3306;
$Ary_Tanzimat['Database']['Username']= 'root';
$Ary_Tanzimat['Database']['Password']= 'xxxxx';
$Ary_Tanzimat['Database']['Type']= 'MySQL';
$Ary_Tanzimat['Database']['Engine']= 'MyISAM';
$Ary_Tanzimat['Database']['CharacterSet']= 'utf8';
$Ary_Tanzimat['Database']['Database']= 'database';
$Ary_Tanzimat['Database']['Prefix']= 'xxxxx_';
# Website
$Ary_Tanzimat['Website']['Title']= 'xxxxx';
$Ary_Tanzimat['Website']['URL']= 'http://domain';
$Ary_Tanzimat['Website']['Keywords']= 'x, x, x, x,...';
$Ary_Tanzimat['Website']['Direction']= 'xxx';
$Ary_Tanzimat['Website']['TimeZone']= 'xxxxx';
$Ary_Tanzimat['Website']['Email']= 'Name@Domain';
...
میشه بجای Software, Database, Website عدد 1 و 2 و 3 یا هر چیزه دیگه گذاشت.

روش دوم:
استفاده از ثوابت: تمامی تنظیمات بصورت Define(یا ثابت) در یک/چند فایل PHP یا H(هدر) ذخیره و در صفحات ضمیمه(Include) می شوند:
Define بصورت Global scope میشه.
PHP:
define('Name', 'xxxxx'); # !
define('Description', 'xxxxxxxx');
define('Version', '1.0.0');
define('Producer', 'xxxxx');
define('Copyright', '(c) 1388/2009 xxxxx. All rights reserved.');
define('License', 'Gnu/GPL');
define('Email', 'xxxxxxx');
define('Link', 'http://xxxxxxxxx');
...
define('Host', '127.0.0.1');
define('Port', 3306);
define('Username', 'root');
define('Password', 'xxxxx');
define('Type', 'MySQL');
define('Engine', 'MyISAM');
define('CharacterSet', 'utf8'); # !latin
define('Database', 'database');
define('Prefix', 'xxxxx_');
...

روش سوم:
استفاده از ini: تمامی تنظیمات بصورت Initation در یک/چند فایل Ini ذخیره و به روش زیر فراخوانی میشن:
کد:
[Software]
Name= xxxxxxx
Description= xxxxxxxx
Version= 1.0.0
...

[Database]
Host= xxxxxx
Port= xxxx
...

[Website]
Title= xxxxxxx
Email= xxxxx
URL= xxxxx
Path= xxxxxx
...
#################################
$Ary_Tanzimat= (array)parse_ini_file('tanzimat.ini');
echo($Ary_Tanzimat->Host);
echo($Ary_Tanzimat->Version);
...
$Ary_Tanzimat= null;
و در آخر دسترسی به تمامی این فایلها رو ممنوع کنید و به ReadOnly تغییر/ChMod بدید.

منبع: http://forum.IranPHP.org
 

Similar threads

بالا