KompjutersIpprogrammar

PHP: firxa fil-firxa. Fittex fil-firxa PHP

Programmazzjoni - huwa l-sintassi u semantika. L-ewwel hija definita mir-regoli tal-lingwa, u t-tieni - l-esperjenza ta 'l-iżviluppatur. Fir-rigward arrays iżviluppatur jista 'tagħbija l-semantika sintassi suġġett. Mhuwiex oġġett, iżda mhux fis-sens tradizzjonali ta 'l-array. PHP jippermettilek li toħloq matriċi ta 'varjabbli ta' tipi differenti, inklużi infushom. Element firxa tista 'tkun funzjoni, huwa possibbli li tagħbija firxa ta' algoritmu reali, tifsira reali.

Sintassi huwa stabbli, iżda tvarja minn verżjoni għall-verżjoni, u mhux dejjem ikun kompatibbli, anke mill-qiegħ up. Portabilità tal-programmi - minsija ukoll kisbiet tal-aħħar seklu. Semantika qed tiżviluppa u dejjem jistgħu jiġu applikati mhux biss għal kwalunkwe verżjoni ta 'kwalunkwe lingwa; Hija saret tradizzjoni li tuża sintassi biex jesprimu l-fatt li r-regoli tal-lingwa anke provduti ma kienx. Fuq dan l-eżempju, arrays tista 'tinftiehem aktar faċilment.

settijiet tal-kostruzzjoni

Firxa fil-PHP huwa sintassi konvenjenti u l-funzjonalità. Dan it-tip ta 'data jistgħu jiġu deskritti bil-quddiem, iżda ħafna drabi huwa konvenjenti li joħolqu arrays fuq il-fly kif meħtieġ.

pubbliku $ aNone = array (); // firxa hija deskritta u fih xejn

pubbliku $ aFact = array ( "avokado", "ħawħ", "ċirasa"); // dan firxa ta 'tliet elementi

Oħloq firxa tal-proċess ta 'verifika ta' xi kondizzjonijiet:

$ CSrcLine = "string data analizzata";

għal ($ i = 0; $ i <13; $ i ++) {

$ CUserLine = inputUserLine (); // xi ħaġa input

jekk (checkFunc ($ cSrcLine, $ cUserLine) {

$ Aresult [] = "Iva"; // żid firxa PHP

} Else {

$ Aresult [] = "Le";

}

}

Bħala riżultat ta 'eżekuzzjoni ta' dan l-eżempju se joħloq firxa ta '13 elementi li l-valuri huma biss "Iva" jew "Le" linja. Elementi se jkollhom indiċijiet minn 0 sa 12. L-istess effett jista 'jinkiseb mill-pre-rekordjati "ġejjieni" PHP-array biex string:

$ CFutureArray = "";

għal ($ i = 0; $ i <13; $ i ++) {

$ CUserLine = inputUserLine (); // xi ħaġa input

jekk ($ i> 0) {$ cFutureArray = "|" .; }

jekk (checkFunc ($ cSrcLine, $ cUserLine) {$ cFutureArray = "Iva" .;

} Inkella {$ cFutureArray = "Le" .; }

}

$ Aresult = jisplodu ( "|", $ cFutureArray);

arrays multidimensjonali

Ħafna sistemi ġestjoni tal-kontenut (SMS) li jużaw matriċi "fuq skala kbira." Min-naħa waħda, hija prattika tajba, min-naħa l-oħra, huwa diffiċli biex jiġi applikat. Anki jekk l-awtur huwa duttrina ċara "PHP-array fil-firxa", allura m'għandux jiġi abbużat: mhux biss l-iżviluppatur se jkollhom jidraw l-notazzjoni kumpless. Spiss, wara filwaqt li l-awtur innifsu twil se tiftakar, dak I kiteb inizjalment:

ritorn firxa (

"View_manager" => firxa (41, 'template_path_stack "=> firxa (__DIR__." /../view ",),

"Router" => firxa ( "ir-rotot" => firxa ( "sayhello '=> firxa (

"Tip" => "Zend \ MVC \ router \ Http \ litterali",

"Għażliet" => firxa ( "rotta" => "/ sayhello", "nuqqasijiet" => firxa (

"Kontrollur" => "Helloworld \ Kontrollur \ Indiċi", "azzjoni" => "indiċi",))))),

"Kontrolluri" => array (= "invokables"> firxa (

"Helloworld \ Kontrollur \ Indiċi" => "Helloworld \ Kontrollur \ IndexController"))

);

Dan huwa kampjun prattika "PHP firxa fil-firxa" ta 'ZF 2. Mhux wisq jispira fl-ewwel, imma taħdem, u forsi jagħmel dan il-qafas ta' suċċess (eżempju mill-modulu ZendSkeletonApplication / modulu / Helloworld / konfigurazzjoni / module.config.php).

Array - struttura tad-data importanti matul id-disinn u l-iżvilupp. Verżjoni multidimensjonali tiegħu kien darba popolari, iżda maż-żmien baqgħet ħtieġa għal arranġamenti ta 'sa żewġ jew tliet dimensjonijiet. Huwa aktar faċli u aktar intuwittivi, iżda wkoll f'termini ta 'professjonaliżmu meta xi ħaġa jibda multiplikazzjoni, hekk xi ħaġa fil-formulazzjoni tal-problema, jew il-kodiċi mhuwiex il-każ.

Sempliċi, aċċessibbli u li jinftiehem

Ħolqien fil-firxa PHP fil-firxa, huwa aħjar li jkun limitat għal żewġ jew tliet livelli hu. Minkejja l-istabbiltà u l-affidabilità ta 'PHP jagħmel żbalji fl-ipproċessar tad sintassi. Ma 'dan inti tista' tittollera li jkollhom editur kodiċi tajba, mdorri li jgħoddu b'mod preċiż parenteżi u virgoli. Madankollu, PHP ma jikkontrollax it-tipi ta 'data (dan huwa karma ipprogrammar moderna) u tippermetti lill-iżviluppatur biex jipprattikaw żbalji semantiċi.

-Dritt li jikkontrollaw it-tipi ta 'varjabbli jew ideat tagħhom stess ta' semantika trasformazzjoni fil sintassi - spiss lussu. Din l-iskrittura rata ta 'telf, kodiċi leġibbiltà, il-faċilità ... għaliex kodifikazzjoni hija dejjem essenzjali.

PHP għandha karatteristika negattiv sinifikanti: l-iskrittura biss prekarja fil-każ ta 'inċertezza. Mhux debuggers kollha ilaħħqu ma 'avvenimenti mhux previsti, u ħafna jiddependi fuq l-esperjenza u l-intuwizzjoni tal-iżviluppatur. L-algoritmu sempliċi minn informazzjoni strutturata aktar aċċessibbli, l-aktar opportunitajiet biex isibu żball jew ma tippermettix dan.

Bħala karatteristika, meta l-ewwel matriċi ta 'għażliet ta' data ġew offruti fl-istrutturi forma - tentattiv clumsy li tinħoloq xi ħaġa barra ta 'tipi differenti ta' data. L-ewwel għexu u kisbu sintassi ġdida qawwija, it-tieni niżlet fl-istorja.

arrays sempliċi u assoċjattiva

Reġistrazzjoni firxa żewġ dimensjonijiet - huwa ieħor par parentesi "[" u "]", per eżempju: $ aSrcData [1] [2] tfisser aċċess għal oġġett [2] mill-firxa [1], l-input lill-firxa $ aSrcData. Fil-PHP, m'hemm l-ebda rekwiżit li tiddikjara bil-quddiem id-data. Lyuboyu iddikjarat informazzjoni tista 'dejjem tiġi ċċekkjata għall-eżistenza.

b'mod effettiv ħafna li tinħoloq xi ħaġa biss meta jkun meħtieġ, fil-forma li fiha hija meħtieġa, u meqruda meta ma jkunx aktar meħtieġ. Filwaqt li jintużaw bħala ċavetta (indiċi) ismijiet sinifikanti jista 'jkun ippreparat istruttura tinqara sinifikanti fil-kuntest tal-lokazzjoni attwali fil-algoritmu:

$ AAnketa [ "isem"] = "Ivanov";
$ AAnketa [ "għomor"] = 42;
$ AAnketa [ "xogħol"] = "Direttur";
$ AAnketa [ "attiva"] = vera;
$ Atable [] = $ aAnketa;

$ AAnketa [ "isem"] = "Petrov";
$ AAnketa [ "għomor"] = 34;
$ AAnketa [ "xogħol"] = "Maniġer";
$ AAnketa [ "attiva"] = vera;
$ Atable [] = $ aAnketa;

$ AAnketa [ "isem"] = "Afanasiev";
$ AAnketa [ "għomor"] = 28;
$ AAnketa [ "xogħol"] = "Xogħol";
$ AAnketa [ "attiva"] = foloz;
$ Atable [] = $ aAnketa;

$ Sone = implode. ( "", $ Atable [1]). "
"; // tieni PHP firxa li string
. $ Sone = $ atable [1] [ "xogħol"]; // sejħa għall element wieħed tat-tieni firxa

Ir-riżultat ta dan l-eżempju (l-ewwel firxa --ċwievet soltu fih jibda bil 0, it-tieni firxa - assoċjattiva, hemm erba 'ċwievet: "isem", "età", "xogħol", "attiv"):

$ Sone = "Petrov; 34; maniġer; 1
Maniġer ";

F'dan l-eżempju sempliċi, wieħed jista 'jara kif l-profil stabbilit jista' jiġi applikat għall-impjegati kollha. Tista 'toħloq firxa ta' impjegati ma 'indiċijiet ta' numri persunal u jekk hemm bżonn impjegat partikolari, imbagħad agħżel huwa fuq in-numru tal-persunal.

Jekk l-organizzazzjoni tiegħek diviżjonijiet jew ikollhom xogħol staġjonali, jew jekk inti tixtieq li jallokaw pensjonanti li jaħdmu separatament ... disinn "PHP-array fil-firxa" konvenjenti ħafna, imma int qatt ma għandhom jinvolvu ruħhom fid-dimensjoni. Żewġ jew tliet dimensjonijiet - l-limitu għal soluzzjonijiet effettivi.

Ċwievet għal ħidma ma 'arrays

Jekk qabel mattered, kif jaħdmu l-affarijiet, fl-aħħar snin, it-tradizzjoni tal-era binarju, meta programmer riedu jkunu jafu eżattament kif l-elementi array huma maħżuna, u xtaqu li jkollhom aċċess dirett, kompletament minsija. Kien hemm ħafna ta 'encodings karattru, li jokkupaw fil-memorja mhux byte wieħed. Il-kelma "bit" issa huwa possibbli li jintlaħqu biss fi operazzjonijiet bit-tfittxija, imma t-tfittxija fil-firxa PHP - hija kwistjoni separata. Aċċess għall-elementi jista 'jkun sempliċi u assoċjattiva. Fl-ewwel każ l-elementi array (li għandhom xi wieħed tipi disponibbli PHP) huma enumerati 0, 1, 2, ... Fit-tieni każ, l-programmer jispeċifika indiċi tagħha stess, ħafna drabi imsemmi bħala "ewlenin" biex jaċċessaw il-valur mixtieq.

$ ALINE [ "frott"] = "oranġjo"; // hawn 'PHP ċavetta firxa = "frott"

jew (kollox biex tkun korretta u konformi mal-paġna kodiċi kodifikazzjoni):

$ Aline [iconv ( "CP1251 '' UTF-8", "frott")] = iconv ( "CP1251 '' UTF-8", "oranġjo");

Meta inti żid lill-firxa valur il-ġdid $ ALINE:

$ Aline [] = iconv ( "CP1251 '' UTF-8", "ħawħ");
$ Aline [iconv ( "CP1251 '' UTF-8", "ħxejjex")] = iconv ( "CP1251" "ħjar" "UTF-8",);
$ Aline [] = iconv ( "CP1251 '' UTF-8", "brunġiel");

bħala riżultat tal-linja:

foreach ($ Aline kif $ ea => $ cv) {
$ Kon. = $ Ck. "=". $ Cv. "
";
}

Dan jinkiseb permezz ta ':

frott oranġjo =
0 = ħawħ
= Ħjara veġetali
1 = brunġiel

-PHP ewlenin firxa meta jingħaddu l-oġġetti "ħawħ" u "brunġiel" ffurmati b'mod sekwenzjali minn 0, u meta jispeċifikaw il-valur tiegħu għandu jkun ugwali għal dan il-valur.

Tneħħi l-elementi mill-firxa

L-eħfef mod biex tneħħi l-element array PHP matul l-ipproċessar. F'dan il-każ, per eżempju, bħala riżultat taċ-ċiklu eżekuzzjoni, is-sors firxa hija meqjusa, u ffurmaw waħda ġdida, li hija sempliċement elementi mhux meħtieġa ma jiġux irreġistrati.

Tista 'tagħmel aktar faċli. Jekk l-aħħar eżempju għall-użu:

mitfija ($ Aline [0]); // neħħi l-element array PHP

ir-riżultat se jkun:

frott oranġjo =
= Ħjara veġetali
1 = brunġiel

Għażliet għall-manipulazzjoni tal-elementi array jistgħux jiġu mibnija sett. Per eżempju, tuża l-funzjoni: implode () u jisplodu (), jista 'jinkiteb firxa PHP ringiela ma diviżur waħda, disassemble u lura fil-firxa ieħor - minn separatur ieħor.

Li sempliċiment tneħħi firxa PHP kollha kemm hi, biss jiktbu: mitfija ($ Aline);

Li biżżejjed.

Fittex fil-firxa

PHP fih xi speċjali funzjoni tfittxija array_keys (), array_values (), array_key_exists (), u in_array (), imma qabel ma tiddeċiedi li jużawhom, għandhom jikkunsidraw il-possibbiltà ta 'tiftix għal f'firxa PHP fuq tagħha stess.

Kull proġett għandu partikolari qasam tas-suġġett, arrays ddisinjati, speċjalment meta parti mill-semantika jiċċaqalqu lejn il-sintassi u rappreżentat minn sett ta 'ċwievet sinifikanti speċifiċi ħafna. Hija tippermetti li inti twettaq funzjoni ta 'tfittxija tiegħek stess, li wkoll jistgħu jiġu deskritti b'mod siewi.

Fil-PHP, inti tista 'sejħa l-funzjoni, l-isem tiegħu huwa ddeterminat matul it-twettiq programm. Eżempju prattiku ħafna tal-librerija PHPWord li tippermetti li inti taqra u tikteb MS Word dokumenti:

$ Elementi = array ( "Test", "Inline", "TextRun", "Link", "PreserveText", "TextBreak",
"ListItem", "Tabella '' ListItemRun", "Image", "Għan", "Nota tal-qiegħ",
"Nota ta 'tmiem", "Checkbox", "kaxxa", "Qasam", "Linja");

$ Funzjonijiet = array ();

għal ($ i = 0; $ i $ Funzjonijiet [$ i] = "żid". $ Elementi [$ i];
}

Bħala riżultat, firxa ta 'funzjonijiet Id $ jirċievu $ elementi valuri array, jiġifieri, l-ismijiet tal-funzjonijiet attwali li jwettqu x-xogħol ma' elementi reali tad-dokument.

Sejħa għal $ elementi [4] funzjoni $ funzjonijiet [4], tista 'tikseb l-tfittxija perfetta u riżultati malajr.

oġġetti sort

data issortjar kompitu huwa importanti, u PHP jipprovdi diversi funzjonijiet għal dan: it-tip (), rsort (), asort (), ksort (), ... Axxendenti u l-elementi dixxendenti tal-aħħar żewġ funzjonijiet jippreservaw relazzjonijiet bejn ċwievet u valuri. Kultant jagħmel sens li tħallat il-valuri tal-firxa bl-addoċċ - shuffle ().

Uża l-funzjonijiet PHP biex issolvi, m'għandniex ninsew li l-membri jista 'jkollhom mhux biss tip differenti, iżda l-kontenut ma pjuttost naturali. L-ewwel ħaġa li tkun attenta ħafna dwar issortjar kordi fihom ittri Russi, dati issortjar, u numri, li huma miktuba f'formati differenti.

L-aħjar mod biex jiktbu soluzzjoni ideali tiegħek stess, għall-inqas fl-istadju tal-ittestjar tal-iskrittura - huwa għażla manwali. Hija se tgħin tipprovdi kontinġenzi.

arrays string

Ma 'karatteristiċi implode () u jisplodu () firxa tista' tkun faċilment trasformat spag u terġa 'lura. Huwa jippermettilek li taħżen data fuq rappreżentazzjoni kompatti u jintużaw fi stat komdu kif meħtieġ.

Array, jiffaċċjaw fil-linja jiftaħ possibbiltajiet ġodda. Per eżempju, il-kompitu ta 'tiftix għal keywords fit-test jirrikjedi li l-misjub ma ġie miżjud mill-ġdid.

$ CSrcLine = "Test Test ListItemRun Kaxxa ListItem Kaxxa Iċċekkja Kaxxa Checkbox kaxxa Nota tal-qiegħ";

$ ASrc = jisplodu ( '', $ cSrcLine);
$ CDstLine = "";

għal ($ i = 0; $ i $ CFind = "[". $ ASrc [$ i]. "]";
jekk (! is_integer (strpos ($ cDstLine, $ cFind))) {
. $ CDstLine = $ cFind;
}
}
$ ADst = jisplodu ( "] [", $ cDstLine);

$ Kon = implode ( "", $ aDst);

Bħala riżultat, varjabbli $ Konu jirċievu biss il-valuri mil-linji oriġinali li jissodisfaw hemm ladarba: "Test; ListItemRun; kaxxa; ListItem; Iċċekkja; Kaxxa; Checkbox; Nota".

lingwa Russa fl-ċwievet u l-valuri

Mhuwiex rakkomandat li tuża xi ħaġa li huwa konness mal-settijiet ta 'karattri nazzjonali fl kostruzzjonijiet sintattika. lingwa Russa, kif ukoll kull ilsna oħra, il-karattri li huma lil hinn mill az, mhux se toħloq problema, li fid-database, iżda mhux fil-sintassi kodiċi. Kultant anke kompitu sempliċi għall PHP «iġibu firxa ta 'l-istampatur jew fuq l-iskrin" iwassal għal "gibberish" u ħafna drabi sempliċiment twaqqaf l-iskrittura.

PHP - lingwa leali u tolleranti tal-karattru nazzjonali, iżda hemm ħafna sitwazzjonijiet fejn l-ammont ta 'xogħol imwettaq għandha tagħmel mill-ġdid biss minħabba fil-post it-tajjeb fil-ħin id-dritt se pop up-ċavetta, jidentifikaw li mhux se jkun possibbli.

sintassi PHP u l-ambjent lingwa

Wieħed iżomm f'moħħu li sintassi PHP - dan wieħed, iżda d-disinn ta 'dan sintassi "għandhom x'jaqsmu" ma' applikazzjonijiet oħra, is-sistema operattiva bl-għażliet hardware. Hemm ħafna għażliet, li jipprovdu l qatt mhu se jkun possibbli.

Regola "fil-kodiċi hemm biss il-kodiċi, u fid-daħla, ġewwa u fuq l-output ikun hemm xi informazzjoni" se jgħinu biex jiġu evitati sorpriżi mhux mistennija. PHP valur fil-firxa jistgħu jkunu "Russu", iżda l-importanti li huwa li jkun sintattikament korrett, mhux biss mil-lat tal-lingwa, iżda wkoll f'termini ta 'ambjent tax-xogħol tiegħu.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 mt.atomiyme.com. Theme powered by WordPress.