KompüterProqramlaşdırma

PHP: array array. PHP sıra Axtar

Programming - sintaksis və semantika deyil. ilk dil qaydaları ilə müəyyən edilmiş, ikinci olunur - geliştirici təcrübəsi. Diziler geliştirici ilə əlaqədar mövzu semantika sintaksis yükləyə bilər. Bu, lakin sıra ənənəvi mənada bir obyekt deyil. PHP özləri daxil olmaqla, müxtəlif növ dəyişənlərin Diziler yaratmaq imkan verir. Bir sıra element real alqoritm, real mənası bir sıra yüklemek üçün mümkündür, bir funksiyası ola bilər.

Sintaksis sabitdir, amma versiyası versiyası dəyişir, və hər zaman hətta alt qədər, uyğun olmaya bilər. proqramların Portability - də ötən əsrin nailiyyətləri unudulmuş. Semantika inkişaf edir və həmişə yalnız hər hansı bir dil hər hansı bir versiyası üçün tətbiq edilə bilər; Hətta təqdim dilinin qaydaları idi ki, ifadə etmək üçün bir sintaksis istifadə etmək üçün bir ənənəyə çevrilib. Bu nümunə, serialların ən asan başa düşülə bilər.

Construction dəstləri

PHP bir sıra rahat sintaksis və funksionallığı edir. Bu data növü əvvəlcədən təsvir edilə bilər, lakin bu, lazım olduğu kimi Tez serialların yaratmaq üçün tez-tez rahatdır.

ictimai $ aNone = array (); // array təsvir və heç bir şey ehtiva edir

ictimai $ aFact = array ( "avokado," şaftalı "," albalı "); // üç elementləri bu array

hər hansı bir şərait yoxlama prosesi bir sıra yaradın:

$ CSrcLine = 'string data təhlil';

üçün ($ i = 0; $ i 13 <; $ i ++) {

$ CUserLine = inputUserLine (); // input bir şey

əgər (checkFunc ($ cSrcLine, $ cUserLine) {

$ AResult [] = 'Bəli'; PHP sıra əlavə //

} Else {

$ AResult [] = 'Xeyr';

}

}

Bu misal icrası nəticəsində dəyərlər yalnız "Bəli" və ya "Xeyr 'line 13 elementlərin bir sıra yaradır. Elements 0 12 eyni təsiri bir simli əvvəlcədən qeydə "gələcək" PHP-array ilə əldə edilə bilər indeksləri olacaq:

$ CFutureArray = '';

üçün ($ i = 0; $ i 13 <; $ i ++) {

$ CUserLine = inputUserLine (); // input bir şey

if ($ i> 0) {$ cFutureArray = '|' .; }

(CheckFunc ($ cSrcLine, $ cUserLine) {$ cFutureArray = 'Bəli' əgər .;

} Başqa {$ cFutureArray = 'Xeyr' .; }

}

; | ( '', $ CFutureArray) $ AResult partlatmağı =

çoxölçülü seriallarda

Diziler istifadə edərək bir çox content management sistemi (SMS) "böyük miqyasda". Bir tərəfdən, digər tərəfdən, bu tətbiq etmək çətindir, yaxşı təcrübədir. Müəllif aydın doktrina "sıra PHP-array" olsa da, o, sui-istifadə edilməməlidir: yalnız geliştirici mürəkkəb notation istifadə almaq lazımdır. Tez-tez, müəllif özü uzun xatırlayıram isə, mən əvvəlcə yazdı sonra

(Array qayıtmaq

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

"Router '=> array (" marşrutları' => array ( "sayhello '=> array (

"Tipi '=>' Zend \ MVC \ Router \ Http hərfi \"

"Options '=> array (" marşrutu' => '/ sayhello', 'yetirilməməsi' => array (

"Controller '=>' HelloWorld \ Controller \ Index ',' hərəkət '=>' index")))))

"Nəzarətçiləri '=> array (" invokables' => array (

"HelloWorld \ Controller \ Index '=>' HelloWorld \ Controller \ IndexController))

);

Bu ilk Çox ruhlandırıcı ZF 2. sıra "bir nümunə təcrübə« PHP-array, ancaq işləyir və bəlkə də bu uğurlu çərçivə (modul ZendSkeletonApplication / modul / HelloWorld / config / module.config.php nümunə) edir.

Array - dizayn və inkişaf zamanı mühüm data strukturu. Onun çoxölçülü version dəfə məşhur idi, lakin zaman keçdikcə qədər iki və ya üç ölçüləri Diziler ehtiyac qalıb. bir şey çarparaq başlayır, belə ki, problemin formalaşmasında bir şey, və ya code belə deyil zaman daha asan və daha asan, lakin peşəkarlıq baxımından.

Sadə əlçatan və anlaşılan

sıra php sıra yaratmaq, iki və ya üç səviyyədə məhdud etmək yaxşı deyil. PHP sabitlik və etibarlılıq baxmayaraq sintaksis emalı səhvlər edir. Bu dəqiq parantez və vergülləri saymaq vərdiş yaxşı kodu redaktoru olan dözə bilər. Lakin PHP (bu karma müasir proqramlaşdırma) və geliştirici semantik səhvlər təcrübə imkan verir məlumatların növ nəzarət etmir.

tez-tez lüks - dəyişənlərin və ya sintaksis transformasiya semantika öz fikir növ nəzarət etmək hüququ. Bu zərər dərəcəsi script kod okunabilirlik, azaltmaq ... kodlaşdırma həmişə vacibdir, çünki.

PHP əhəmiyyətli mənfi xüsusiyyət var: script yalnız qeyri-müəyyənlik vəziyyətində askıda. Bütün debuggers gözlənilməz hadisələr öhdəsindən və daha geliştirici təcrübə və intuisiya asılıdır. strukturlaşdırılmış məlumat çox sadə alqoritm daha əlçatan, daha çox şansı bir səhv tapmaq və ya buna icazə vermir.

Səciyyəvidir ki, ilk Diziler forması strukturlarında məlumatların variantları təklif zaman - məlumatların müxtəlif növ bir şey yaratmaq üçün bir clumsy cəhd. Birinci, ikinci tarixə keçdi, sağ və güclü yeni sintaksis qazandı.

Sadə və assosiativ Diziler

iki ölçülü array qeyd - Mötərizədə bir cüt "[" və "]", misal üçün: $ aSrcData [1] [2] bir maddə daxil olmaq deməkdir [2] array [1], array $ aSrcData giriş. PHP, əvvəlcədən məlumat elan etmək üçün heç bir tələb yoxdur. Lyuboyu məlumat həmişə mövcudluğu üçün yoxlanılır bilər bildirib.

Bu artıq lazım olduqda lazım, və məhv olan formada zəruri yalnız çox səmərəli bir şey yaratmaq üçün. əsas (indeksi) kimi mənalı adlar istifadə alqoritmi ilə cari yeri kontekstində mənalı oxunaqlı strukturu hazırlanmış ola bilər:

$ AAnketa [ 'name'] = 'İvanov';
$ AAnketa [ 'yaş'] 42 =;
$ AAnketa [ 'iş'] = 'Director';
$ AAnketa [ 'aktiv'] doğru =;
$ ATable [] = $ aAnketa;

$ AAnketa [ 'name'] = 'Petrov';
$ AAnketa [ 'yaş'] 34 =;
$ AAnketa [ 'iş'] = 'Manager';
$ AAnketa [ 'aktiv'] doğru =;
$ ATable [] = $ aAnketa;

$ AAnketa [ 'name'] = 'Afanasiev';
$ AAnketa [ 'yaş'] 28 =;
$ AAnketa [ 'iş'] = 'İş, İş;
$ AAnketa [ 'aktiv'] yalan =;
$ ATable [] = $ aAnketa;

$ Sone = Implode. ( "", $ ATable [1]). "
'; // simli ikinci PHP-array
. $ Sone = $ aTable [1] [ 'iş']; // ikinci serialın bir element zəng

Bu nümunə nəticə (ilk array - bu adi düymələri 0 ikinci sıra başlayır - assosiativ, dörd düymələri var: 'adı', 'yaş', 'iş', 'effektiv'):

$ Sone = 'Petrov; 34; manager; 1
Manager ';

Bu sadə misal olaraq, bir müəyyən profile bütün işçilərə tətbiq edilə bilər necə görə bilərsiniz. Siz kadr nömrələri göstəriciləri ilə işçilərin bir sıra yaratmaq və xüsusi işçi lazım, onda kadr sayı seçə bilərsiniz.

Sizin təşkilat bölmələri varsa və ya mövsümi iş, və ya ayrı-ayrı iş pensiyaçılar ayırmaq istəyirsinizsə ... dizayn "sıra PHP-array" çox rahat, amma ölçüsü cəlb heç vaxt. Iki və ya üç ölçüləri - effektiv həlli üçün limit.

Diziler ilə iş üçün Keys

əvvəl hər şeyi son illərdə necə, mattered, bir proqramçı array elementləri saxlanılır dəqiq necə bilmək istəyirdi və onlara birbaşa daxil olmaq üçün dilədi ikili dövrünün ənənə, tamamilə unudulmuş. yaddaş tutur xarakter kodlamaları, bir çox bir byte var deyil idi. The sözü "bit" indi mümkün cavab yalnız bir az-axtarış əməliyyatları, lakin the axtarış üçün bir PHP array - bir ayrı məsələdir. elementləri Access sadə və assosiativ ola bilər. Birinci halda, (PHP mövcud növləri hər hansı) massivin elementləri 1, 2, ... ikinci halda, proqramçı tez-tez "əsas" istənilən dəyəri daxil olmaq üçün adlandırılacaq öz index, müəyyən, 0 nömrələnir.

$ ALINE [ "meyvə"] = "narıncı"; // burada PHP-key array = "meyvə"

və ya (hər şeyi düzgün və kodu səhifə encoding uyğun olmalıdır):

$ Aline [iconv (UTF-8 "," CP1251, "meyvə")] = iconv (UTF-8 "," CP1251, "narıncı");

Zaman əlavə etmək the array $ ALINE yeni dəyər:

$ Aline [] = iconv (UTF-8 "," CP1251 ',' şaftalı ');
$ Aline [iconv (UTF-8 "," CP1251, "bitki")] = iconv (UTF-8 "," CP1251, "xiyar");
$ Aline [] = iconv (UTF-8 "," CP1251 ',' badımcan ');

kimi nəticəsində the loop:

foreach {($ Aline $ ck kimi => CV $)
$ Konus. = $ Ck. '='. $ Cv. "
';
}

Bu əldə edilir:

narıncı meyvə =
0 = şaftalı
= Tərəvəz xiyar
1 = badımcan

PHP-key obyektin şaftalı və 0-dan ardıcıl formalaşır "badımcan" əlavə və onun dəyəri ifadə edərkən bu dəyərinə bərabər olacaq array.

array elementləri aradan qaldırılması

en asan yol emal zamanı PHP array element aradan qaldırılması üçün. Bu halda, məsələn, icra dövrü nəticəsində, qaynaq array görüntülenen və sadəcə lazımsız elementləri qeyd olunur yeni bir, formalaşır.

Siz asan edə bilərsiniz. son misal istifadə edin:

unset ($ Aline [0]); // PHP array element aradan qaldırılması

nəticə olacaq:

narıncı meyvə =
= Tərəvəz xiyar
1 = badımcan

array elementləri manipulyasiya üçün Options set inşa edilə bilər. Məsələn, funksiyası istifadə edərək: implode () və bir divider ilə PHP-sıra sıra yazılı bilər) (partlatmağı geri başqa array daxil sökmək və - bir separator ilə.

sadəcə bütövlükdə bir PHP sıra aradan qaldırılması üçün, yalnız yazmaq: unset ($ Aline);

Bu kifayət qədər deyil.

sıra Axtarış

PHP olan xüsusi axtarış funksiyası Profilə (), array_values (), array_key_exists (), və in_array (), lakin əvvəl qərar istifadə onlara olmalıdır hesab the imkanı üçün axtarış üçün bir PHP array üzərində öz.

Hər layihə xüsusi olan mövzu sahəsi, semantika hissəsi sintaksis köçürülüb və çox xüsusi mənalı düymələri bir sıra təmsil xüsusilə hazırlanmış Diziler. Bu da əhəmiyyətli təsvir edilə bilər, öz axtarış funksiyası yerinə yetirmək üçün imkan verir.

PHP, siz proqram icrası zamanı müəyyən edilir adı olan funksiyası zəng edə bilərsiniz. oxumaq və MS Word sənədləri yazmaq imkan verir PHPWord kitabxana bir çox praktik nümunə:

$ Elements = array ( "Text", "Inline ',' TextRun", "Link", "PreserveText", "TextBreak"
"ListItem ',' ListItemRun", "Cədvəl", "Image", "Object", "Haşiyə"
"Not", "Onay", "kutucuğu", "Sahə", "Line ');

$ Funksiyaları = array ();

üçün ($ i = 0; $ i count ($ elementləri) <; $ i ++) {
$ Funksiyaları [$ i] = 'əlavə et'. $ Elements [$ i];
}

Nəticədə, funksiyaları bir sıra $ $ dəyərlər array elementləri almaq, ki, sənədin real elementləri ilə iş yerinə faktiki funksiyaları adları.

Calling üçün $ elementləri [4] funksiyası $ funksiyaları [4], siz can get the mükəmməl axtarış və sürətli nəticələri.

Sort maddələr

data çeşidlənməsi tapşırıq əhəmiyyətli və PHP təmin bir neçə funksiyaları bu: sort (), rsort (), asort (), ksort () ... Ascending və enən elementləri the sonuncu iki funksiyaları qorumaq münasibətlər arasında düymələri və dəyərlər. Bəzən təsadüfi serialın dəyərlər qarışdırmaq üçün əhəmiyyət kəsb edir - shuffle ().

düzmək üçün PHP funksiyaları istifadə edərək, biz üzvləri müxtəlif növü, lakin kifayət qədər təbii content yalnız ola bilər ki, unutmaq lazım deyil. ilk şey müxtəlif formatlarda yazılı rus məktublar, çeşidlənməsi tarixləri, və nömrələr ehtiva strings çeşidlənməsi haqqında çox diqqətli olmalıdır.

ən azı script test mərhələsində öz ideal həll yazmaq üçün ən yaxşı yolu - əl çeşidlənməsi edir. Bu şərti təmin kömək edəcək.

string Diziler

xüsusiyyətləri implode () və partlatmağı ilə () array asanlıqla simli çevrilir və geri almaq bilər. Bu kompakt təmsil veri və lazım olduğu kimi rahat dövlət onları yerləşdirmək üçün imkan verir.

Array istiqamətində üzləşdiyi yeni imkanlar açır. Məsələn, mətn açar sözlər, üçün axtarış vəzifəsi tapıldı yenidən əlavə deyil ki, tələb edir.

$ CSrcLine = 'Text Text ListItemRun kutucuğu ListItem kutucuğu Box CheckBox kutucuğu Haşiyə edin';

$ ASTK = partlatmağı ( '', $ cSrcLine);
$ CDstLine = '';

üçün ($ i = 0; $ i $ CFind = '['. $ ASTK [$ i]. ']';
əgər (! is_integer (strpos ($ cDstLine, $ cFind))) {
. $ CDstLine = $ cFind;
}
}
$ ADSTAR = partlatmağı ( '] [', $ cDstLine);

$ Konus = Implode ( ';', $ ADSTAR);

Nəticədə, dəyişən $ CONE dəfə görüşmək orijinal xətləri yalnız dəyərlər almaq: "Mətn; ListItemRun, kutucuğu, ListItem, yoxlamaq; Box, Onay; Haşiyə".

düymələri və dəyərlər rus dili

Bu sintaktik konstruksiyaların milli xarakter dəstləri ilə bağlı bir şey istifadə etmək məsləhət görülmür. Rus dili, eləcə də bütün digər dillərdə, simvol olan, lakin kodu sintaksis, verilənlər bazası olan bir problem yaratmaq deyil, az kənarda. Bəzən PHP «hətta sadə məsələ printer bir sıra gətirmək və ya ekranda sadəcə script dayandırmaq tez-tez gibberish" "gətirib çıxaracaq" və s.

PHP - dil sadiq və milli xarakter tolerant, lakin görülən işlərin həcmi əsas açılır doğru zamanda doğru yerdə, mümkün olmayacaq müəyyən yalnız, çünki yenidən nə var, bir çox hallarda var.

PHP sintaksis və dil mühit

bu bir, lakin digər proqramları, hardware variantları ilə əməliyyat sistemi ilə bu sintaksis "müqavilə" dizayn - Nəzərə ki PHP sintaksis edin. mümkün heç vaxt bütün təmin etmək üçün bir çox variantları var.

"Kodu var yalnız kodunu, və girişində, daxili və çıxış hər hansı bir məlumat yoxdur" gözlənilməz sürprizlər qarşısını almaq kömək edəcək Qaydasının. array PHP-dəyər "Rusiya" ola bilər, lakin bu əsas dil baxımından, həm də onun iş mühiti baxımından deyil, syntactically düzgün olmalıdır.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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