Mis on PHP konfiguratsiooni mustrid?

PHP Configuration Patterns

PHP konfiguratsiooni Mustrid

Ülevaade: PHP on platvormiüleste keeles. See on server rakendus nii et me peame mõtlema häälestust PHP tarkvara. On mitmeid viise, kuidas luua seadistatav PHP rakendused. Konfiguratsiooni paindlikkust tuleb nagu sisseehitatud funktsioon PHP. Aga me peame mõistma nõue selgelt enne taotluse seadistatav.

See artikkel räägib erinevat PHP konfiguratsiooni mustrid ja nende rakendamine.

Sissejuhatus:

On mitmeid viise, kuidas teha PHP rakendus seadistatav. On ka ideaalne konfiguratsiooni punktid, mis on tööstuse standard. Need punktid on kindlaks teha, kas PHP rakendus on liiga seadistatav või liiga suletud. Kui PHP rakendus on mõned kliendi paigaldamist, siis peaks olema seadistatav, et mahuks kohandatud nõuded. On erinevaid tehnikaid talletamiseks saadaval seadistusi ja võimalusi on nimetatud allpool.

  1. INI faili
  2. PHP faili
  3. tekstifail
  4. XML-faili
  5. andmebaas

Iga valik on oma plussid ja miinused. Nüüd kõik need valikud on avastanud, et jälgida, mis tehnikat on täpne töö kohaldamine.

Ini Failimustrid: PHP on sisseehitatud tuge konfiguratsiooni faile. Ülesanne on teostatud initsialiseerimise (KÄESOLEVA) faili mehhanism, mis on tuntud kui php.ini faili. See fail defineerib konstandid, andmebaasi ühendus parameetrid, istungil seotud väärtused jne. Aga kohandatud konfiguratsiooni parameetreid võib lisada ka php.ini faili kohta oma taotluse nõue. Olgem kontrollida, lihtne näide.

Lubage mul lisada lihtne joon php.ini fail.

myappworkdir = phpbuilder

Listing1: sample.php suunav php.ini faili

<?php

funktsiooni get_work_directory()

{

$v = get_cfg_var( “myappworkdir ” );

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

}

kaja( get_work_directory().”\n” );

?>

Nüüd lubage mul kasutada seda käsureale. See näitab väärtus, nagu näidatud allpool.

% php sample.php

phpbuilder

%

Me peame meeles pidama, et INI faili konfiguratsiooni kirjed ei soovitata oma taotlused. Peamine põhjus on see, et INI faili saab lugeda lihtsalt, kuid kirjutades sinna turvaliselt on peaaegu võimatu. Nii tagajärjel, INI faili sobib ainult lugemiseks toimingud. Kui teie taotlus peab nii lugeda ja kirjutada operatsioone, siis INI faili konfiguratsiooni muster tuleb vältida. Teine põhjus on see, et php.ini faili on jagatud kõik rakendused töötavad server, nii taotluse Erikannete ei soovitata.

PHP Skriptifail muster: PHP skripti saab kasutada ka salvestada seadistuskirjeid. See on midagi, kuid PHP fail, mis hoiab konfiguratsiooni parameetreid. Esimene samm on luua PHP fail ja seejärel lisage konstandid ühe taotluse nõue. Need konstandid pääseb otse teiste faile.

Järgmised proovi näitab ühe skripti faili, mis hoiab konstandid ja teine ​​PHP faili pöördub väärtused.

Listing 2: Proovi näitab konfiguratsiooni kirjed (configscript.php)

<?php

# Töökaust asukohta

#

$WORK_DIRECTORY = “workdir”;

?>

Listing 3: .Proovi näidates juurdepääsu konfiguratsiooni väärtused (test.php)

<?php

require_once ‘configscript.php’;

funktsiooni get_work_directory()

{

globaalse $ WORK_DIRECTORY;

tagastamise $ WORK_DIRECTORY;

}

kaja( get_work_directory().”\n” );

?>

Nüüd andke meile arutada eeliseid see disain muster. First, fail on äsja loodud nii, et see on lihtsalt tühi fail, kuhu saab lisada parameetreid. Samuti saab panna PHP skripti faili samasse faili root. Teine eelis on see, et faili saab muuta kasutades mis tahes standardse toimetaja.

Koos eelised on mõned puudused ka. See muster on ka read-only muster nagu INI faili arutati eelmises osas. Nii et loe Operatsioon on väga lihtne, kuid kirjutada on peaaegu raske teha.

Tekst Failimustrid: Meie eelmise kahe mustrid sobisid ainult lugemiseks toimingud. Aga kui taotlus on vaja lugeda ja kirjutada seadistuskirjeid siis peaksime otsima muid võimalusi. Siin ma arutleda teksti konfiguratsiooni muster.

Olgem vaadata üks näide rakendamise tekstifaili muster.

Pärast on esimene tekstifaili, mille konfiguratsiooni kirjed. See on lihtne (txt) faili, millel konfiguratsiooni kirjed.

Listing 4: Proovi näidates teksti failist (Config.txt)

# Application teksti konfiguratsioonifaili

Title = My App in phpbuilder

WorkDirectory = workdir

Järgmine osa on ise määratletud konfiguratsiooni klassi pääsemiseks teksti konfiguratsiooni failist.

Listing 5: Proovi näidates otsinguga konfiguratsiooni väärtused (test.php)

<?php

klassi TextConfiguration

{

private $configFileText = ‘config.txt’;

era- $ itemslist = array();

funktsiooni __construct() { $this->parseFile(); }

funktsiooni __get($ID) { tagasi $ this->itemslist[ $ID ]; }

funktsiooni parseFile()

{

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

kuigi( $l = fgets( $FL ) )

{

kui ( preg_match( '/ ^ # / ", $l ) == false )

{

preg_match( '/ ^(.*?)=(.*?)$/’, $l, $avastatud );

$this->itemslist[ $avastatud[1] ] = $ Leitud[2];

}

}

kirjutamisel( $FL );

}

}

$t = uus TextConfiguration();

kaja( $t->WorkDirectory.”\n” );

?>

Selles klassis oleme loomas konfiguratsiooni klassi objekti. Pärast seda ehitaja loeb teksti sisust konfiguratsioonifaili ja seejärel kohaliku muutuja See on kaetud liigendatud andmed. Järgmise sammuna skripti otsida "WorkDirectory’ ja lõpuks sellest väärtust.

Kui PHP fail käivitatakse käsurealt siis järgmine tulemus kuvatakse.

% php test.php

workdir

%

Sarnases kuidas kirjutada operatsiooni võib läbi viia ka sama teksti konfiguratsioonifaili. Meil on vaja lisada veel mõned meetodid kohandatud konfiguratsiooni klassi andmete salvestamiseks tekstifaili. Kuigi kodeerimine osa on natuke rohkem seda lähenemist, kuid see toetab nii lugeda ja kirjutada operatsiooni.

XML-faili muster: Eelmises osas olen rääkinud tekstifaili mustrit toetus lugema ja kirjutama operations.XML fail on veel üks võimalus, mida saab kasutada PHP konfiguratsiooni muster. XML failid on ka laialt kasutatav konfiguratsioonifail erinevaid rakendusi, nii see on tööstuse standard. In addition to this, XML failid on silt, mis põhineb ja on palju standard toimetajad saadaval redigeerimiseks XML faile.

Tehkem kõigepealt kontrollida konfiguratsioonifaili, mis hoiab parameetreid.

Listing6: Proovi näidates xml koosseisudes faili (config.xml)

<?xml version=”1.0″?>

<config>

<pealkiri>Minu app phpbuilder</pealkiri>

<WorkDirectory>workdir</WorkDirectory>

</config>

Pärast on ajakohastatud konfiguratsiooni klassi tutvumise andmeid XML-i.

Listing7: Proovi näidates tavadega XML-i (testxml.php)

<?php

klassi XMLConfiguration

{

private $configFileXML = ‘config.xml’;

era- $ itemslist = array();

funktsiooni __construct() { $this->sõeluda(); }

funktsiooni __get($ID) { tagasi $ this->itemslist[ $ID ]; }

funktsiooni parseXML()

{

$doc = uus DOMDocument();

$mär->koormus( $this->configFileXML );

$cn = $ mär->getElementsByTagName( “config” );

$sõlmede = $ CN->kirje(0)->getElementsByTagName( “*” );

igaühele( $sõlmede kui $ sõlme )

$this->itemslist[ $lümfisõlm>nodename ] = $ Lümfisõlm>nodeValue;

}

}

$c = uus XMLConfiguration();

kaja( $C->WorkDirectory.”\n” );

?>

XML konfiguratsiooni muster on palju puhtam ja lihtsam rakendada. Kui ülaltoodud kood käivitatakse käsurealt siis kuvab sama tulemuse nagu eespool. Ülaltoodud proovi näitab lugemistoiming ainult. Kirjutamistoiming operatsiooni võib läbi viia ka, lisades mõned meetodid.

andmebaas muster: Nüüd arutatakse viimase PHP konfiguratsiooni muster, mis põhineb andmebaasis. Andmebaas hoiab väärtuste määramine. Ja tavalise klassi peab olema kavandatud eespool juurdepääs andmebaasi skeemi ja hankida väärtused.

Andmebaas põhineb konfiguratsiooni muster on põhimõtteliselt hübriid muster. See on segu teksti ja andmebaasi struktuuris. Konfiguratsioon klass on mõeldud lugemiseks algväärtustel tekstifaili ning seejärel juurdepääsu andmebaasi värskendada seotud kanded. Aga see lähenemine on piisavalt paindlik, et kasutada erinevates rakendustes.

Järeldus: Käesolevas artiklis me ei puudutanud kõiki aspekte PHP konfiguratsiooni mustrid. Me oleme ka mõistnud, et konfiguratsiooni osa PHP taotlus tuleb arvestada projekteerimise faasis. PHP rakendused võivad olla erinevat tüüpi sõltuvalt funktsionaalsus, nii et valik konkreetse konfiguratsiooni muster on võtmeteguriks edu. Loodan, et teil on mõistnud põhimõisteid PHP konfiguratsiooni mustrid ja nende rakendamine reaalses maailmas rakendusi.

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

Enjoy this blog? Please spread the word :)

Follow by Email
LinkedIn
LinkedIn
Share