PHP konfiqurasiya nümunələri hansılardır?

PHP Configuration Patterns

PHP Configuration Patterns

Baxış: PHP bir cross platform dili. Bu server based proqram ki, biz PHP proqram konfiqurasiya ayarları haqqında düşünmək lazımdır. yapılandırılabilir PHP applications yaratmaq müxtəlif yolları var. bir PHP xüsusiyyət inşa kimi konfiqurasiya rahatlıq gəlir. Amma biz bir proqram yapılandırılabilir etməzdən əvvəl aydın tələb anlamalıdır.

Bu maddə müxtəlif PHP konfiqurasiya nümunələri və onların həyata keçirilməsini müzakirə edəcəklər.

Giriş:

PHP proqram yapılandırılabilir etmək üçün bir neçə yol var. sənaye standart ideal konfiqurasiya xal var. Bu xal bir PHP proqram çox yapılandırılabilir və ya çox qapalı olub-olmadığını müəyyən edəcək. PHP proqram bəzi müştəri quraşdırılması üçün onda bu xüsusi tələblərinə uyğun kifayət qədər yapılandırılabilir olmalıdır. Orada konfiqurasiya parametrlərini saxlanılması üçün müxtəlif üsulları var və variantları aşağıda göstərilən.

  1. INI fayl
  2. PHP fayl
  3. Text file
  4. XML faylı
  5. Database

Hər seçim onun üstünlükləri və mənfi cəhətləri var. İndi bu seçim bütün iş tətbiqi üçün dəqiq olan texnika müşahidə aşkar olunacaq.

INI File Pattern: PHP konfiqurasiya faylları üçün dəstək inşa etmişdir. tapşırıq başlatma tərəfindən həyata keçirilir (BU) php.ini faylı olaraq tanınır fayl mexanizmi. Bu fayl sabitləri müəyyən, verilənlər bazasına qoşulma parametrləri, sessiya bağlı dəyərlər və s. Amma xüsusi konfiqurasiya parametrləri də tətbiq tələb üzrə php.ini faylı daxil edilə bilər. Bizə sadə misal yoxlamaq edək.

Mənə bir sadə xətti əlavə edək php.ini fayl.

myappworkdir = phpbuilder

Listing1: php.ini faylında sample.php göstərən giriş

<?php

funksiyası get_work_directory()

{

$v = get_cfg_var( “myappworkdir ” );

return ( $v == null ) ? “workdir” : $v;

}

əks-səda( get_work_directory().”\n” );

?>

İndi mənə skript istemi bu run edək. aşağıda göstərilən kimi dəyər göstərilir.

% php sample.php

phpbuilder

%

Biz konfiqurasiya entries üçün INI fayl applications üçün tövsiyə deyil ki, yadda olmalıdır. Bunun əsas səbəbi INI faylı asanlıqla oxumaq, lakin təhlükəsiz şəkildə onu yazılı demək olar ki, qeyri-mümkün ola bilər ki,. nəticəsində So, INI fayl oxumaq yalnız əməliyyatları üçün uyğun. Sizin proqram həm ehtiyacı varsa oxumaq və əməliyyatları yazmaq, sonra konfiqurasiya model kimi INI fayl yol olmalıdır. İkinci səbəb php.ini fayl server çalışan bütün applications arasında paylaşılan ki,, belə ki, proqram xüsusi entries tövsiyə olunmur.

PHP Script File model: PHP script də konfiqurasiya maddələr saxlamaq üçün istifadə edilə bilər. Bu konfiqurasiya parametrləri tutan bir PHP fayl başqa bir şey deyil. ilk addım PHP fayl yaratmaq və sonra proqram tələblərinə uyğun olaraq sabitləri əlavə etmək. Bu sabitləri digər faylları birbaşa əldə edilə bilər.

Aşağıdakı nümunə sabitləri keçirir və ikinci PHP fayl dəyərlər daxil olan bir script fayl göstərir.

Listing 2: Nümunə göstərən konfiqurasiya entries (configscript.php)

<?php

# İş directory yeri

#

$WORK_DIRECTORY = “workdir”;

?>

Listing 3: .Nümunə göstərən konfiqurasiya dəyərlər daxil (test.php)

<?php

require_once ‘configscript.php’;

funksiyası get_work_directory()

{

qlobal $ WORK_DIRECTORY;

geri $ WORK_DIRECTORY;

}

əks-səda( get_work_directory().”\n” );

?>

İndi bu dizayn model üstünlükləri müzakirə edək. First, bu parametrləri əlavə edə bilərsiniz yalnız bir boş fayl belə fayl yeni yaradılmış. Siz həmçinin kök kimi eyni fayl PHP script faylı qoya bilər. İkinci üstünlüyü fayl hər hansı bir standart redaktoru istifadə edərək, redaktə edilə bilər ki,.

üstünlükləri ilə yanaşı, bəzi mənfi cəhətləri də var. Bu model də əvvəlki bölmədə müzakirə INI fayl kimi bir read-yalnız model. Belə ki, oxumaq əməliyyat çox asandır, lakin yazma yerinə yetirmək üçün demək olar ki, çətindir.

Text File Pattern: Bizim əvvəlki iki nümunələri oxumaq yalnız əməliyyatları üçün uyğun idi. proqram oxumaq və konfiqurasiya maddələr yazmaq lazımdır əgər Amma sonra biz digər variantları axtarmaq lazımdır. Burada mətn konfiqurasiya model haqqında müzakirə edəcək.

Bizə mətn faylı model həyata bir misal yoxlamaq edək.

Sonra ilk mətn faylı konfiqurasiya entries olan. Bu sadə (mətn) fayl konfiqurasiya entries olan.

Listing 4: Nümunə göstərən mətn faylı entries (config.txt)

# Tətbiqi mətn konfiqurasiya faylı

phpbuilder Title = My App

WorkDirectory = workdir

növbəti hissəsi mətn konfiqurasiya faylı entries daxil olmaq üçün özünü müəyyən konfiqurasiya sinif.

Listing 5: konfiqurasiya dəyərlər nümunəsi göstərən axtarış (test.php)

<?php

class TextConfiguration

{

private $configFileText = ‘config.txt’;

Şəxsi $ itemslist = array();

funksiyası __construct() { $this->parseFile(); }

funksiyası __get($id) { qayıtmaq $ this->itemslist[ $id ]; }

funksiyası parseFile()

{

$fl = fopen( $this->configFileText, "r’ );

isə( $l = fgets( $fl ) )

{

əgər ( preg_match( / ^ # / ', $l ) == saxta )

{

preg_match( / ^(.*?)=(.*?)$/’, $l, $aşkar );

$this->itemslist[ $aşkar[1] ] = $ Tapıldı[2];

}

}

fclose( $fl );

}

}

$t yeni TextConfiguration =();

əks-səda( $t->WorkDirectory.”\n” );

?>

Bu sinif biz konfiqurasiya sinif obyekt yaratmaq. Bundan sonra konstruktor mətn konfiqurasiya faylı məzmunu oxuyur və sonra yerli dəyişən ayrıştırılan data ilə yaşayır. Növbəti addım script axtarış "WorkDirectory’ və nəhayət dəyəri göstərilir.

PHP fayl skript istemi run Əgər aşağıdakı nəticə nümayiş olunacaq.

% php test.php

workdir

%

oxşar şəkildə yaza əməliyyat eyni mətn konfiqurasiya fayl edilə bilər. Biz mətn faylı məlumat saxlamaq üçün xüsusi konfiqurasiya sinif bir daha üsulları əlavə etmək lazımdır. coding hissəsi bu yanaşma bir az daha, lakin bu oxumaq və yazmaq əməliyyat, həm də dəstəkləyir olsa da.

XML Fayl model: Əvvəlki bölmədə bir PHP konfiqurasiya model kimi istifadə edilə bilər ki, başqa seçim oxumaq və yazmaq operations.XML fayl dəstəyi ilə mətn faylı model müzakirə etdik. bir standart belə XML faylları da geniş müxtəlif applications konfiqurasiya faylı kimi istifadə olunur. In addition to this, XML faylları tag əsaslanır və XML faylları redaktə üçün standart redaktorları çox var.

Əvvəlcə parametr dəyərlər keçirir konfiqurasiya faylını yoxlamaq edək.

Listing6: Nümunə göstərən xml konfiqurasiyaları fayl (config.xml)

<?xml version=”1.0″?>

<config>

<başlıq>phpbuilder Mənim app</başlıq>

<WorkDirectory>workdir</WorkDirectory>

</config>

xml konfiqurasiya faylı data daxil olmaq üçün yenilənmiş konfiqurasiya sinif Aşağıdakı.

Listing7: xml konfiqurasiya faylı nümunəsi göstərən bulges (testxml.php)

<?php

class XMLConfiguration

{

private $configFileXML = ‘config.xml’;

Şəxsi $ itemslist = array();

funksiyası __construct() { $this->təhlil etmək(); }

funksiyası __get($id) { qayıtmaq $ this->itemslist[ $id ]; }

funksiyası parseXML()

{

$doc = Yeni DOMDocument();

$doc->yük( $this->configFileXML );

$cn = $ doc->getElementsByTagName( “config” );

$qovşaqlarının = $ cn->maddə(0)->getElementsByTagName( “*” );

foreach( $$ Node kimi qovşaqlarının )

$this->itemslist[ $düyün->nodeName ] = $ Node->nodeValue;

}

}

$c = Yeni XMLConfiguration();

əks-səda( $c->WorkDirectory.”\n” );

?>

xml konfiqurasiya model həyata keçirilməsi üçün çox təmiz və asandır. Yuxarıda code skript istemi run Əgər o, yuxarıda kimi eyni çıxış göstərilir. Yuxarıda nümunə göstərir oxu əməliyyat yalnız. write əməliyyat da daha çox üsulları əlavə edilə bilər.

Database model: İndi biz bazası əsasında son PHP konfiqurasiya model müzakirə edəcək. Verilənlər bazası konfiqurasiya dəyərlər keçirəcək. Və xüsusi sinif verilənlər bazası şeması daxil olmaq və dəyərlər almaq üçün yuxarıda nəzərdə var.

Verilənlər bazası based konfiqurasiya model əsasən hibrid model. Bu mətn və verilənlər bazası model bir qarışığıdır. konfiqurasiya class bağlı entries yeniləmə bazası bir mətn faylı ilkin dəyərləri oxumaq və sonra daxil olmaq üçün nəzərdə tutulmuşdur. Amma bu yanaşma müxtəlif applications istifadə etmək üçün kifayət qədər çevik deyil.

Nəticə: Bu yazıda PHP konfiqurasiya nümunələri bütün aspektləri toxunduq. Biz də PHP proqram konfiqurasiya hissəsi dizayn mərhələsində nəzərə alınmalıdır ki, başa. PHP applications funksionallığı asılı olaraq müxtəlif növ ola bilər, belə bir xüsusi konfiqurasiya model seçilməsi uğur üçün əsas amildir. Mən sizə real dünya applications əsas PHP konfiqurasiya nümunələri anlayışlar və onların həyata keçirilməsinə başa ümid.

============================================= ============================================== Buy best TechAlpine Books on Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Enjoy this blog? Please spread the word :)

Follow by Email
LinkedIn
LinkedIn
Share