Arrays
|
Arrays бол олон утгыг ( value ) нэг хувьсагчид ( variable ) харгалзуулсан євєрмєц variable юм. Arrays нь Strings ба Numbers 2-г хоёуланг нь агуулж болдог. Тvvгээр ч барахгvй Arrays нь ондоо Arrays-г утга болгож чадна. Тийм учраас Arrays-д асар их хэмжээний мэдээлэл ( утга ) багтааж болдгоороо, String ба Numbers variable-аас ялгарна. Arrays-н хамгийн гол ашиг нь хоорондоо тєстэй хувьсагчуудын утгыг ганцхан хувьсагчид харгалзуулснаар цаг, зай хэмнэхээс гадна кодын алдаа гарах нь багасна. Жишээ нь та єєрийн СД-нvvдээ РНР хуудаст хийхээр шийдлээ гэж бодьё. Жирийн HTML дээр яахав та ингэх байх. .... <OL> <LI>CD1 <LI>CD2 <LI>CD3 .... <LI>CD? </OL> Ингээд хийчэх амархан. Гэтэл энэ урт жагсаалтад байгаа СДнvvдийг хэрхэн А-аас Я хvртэл байрлуулах вэ. Бас л нэг тусдаа HTML хуудас бvтээх шаардлага гарах биз. Бvvр хамтлагын нэрээр нь, хугацаагаар нь, зарагдсан тоогоор нь, уран бvтээлчдийх нь нэрээр нь, СД-ны нэрээр нь, дууны тєрлєєр нь, улсых нь нэрээр гэх мэтээр олон тєрлийн аргаар жагсаах бол тус бvрд нь HTML хуудас бvтээх шаардлага гарах байсан хэрвээ РНР мэтийн вэб хэлvvд байгаагvйсэн бол. Гэхдээ ямар нэг урт жагсаалт бvхий variable хийхдээ нєгєє муу String Numbers 2-oo бас л ашиглах нь тийм ч сайн арга биш. Энэ нь СД бvрд нэг variable vvсгэх шаардлагатай гэсэн vг. $CD1 = "CD1"; $CD2 = "CD2"; $CD3 = "CD3"; $CD4 = "CD4"; .... $CD? = "CD?"; гэх мэтээр. Энэ нь маш их цаг, хvч хєдєлмєр гарздана. Тэгвэл эдгээрийн тєстэй тал болох variable нэрийг нь ашиглаад нэг Array болгочоод $My_CDs гэсэн ойлгомжтой нэрээр нэрлэвэл байдал эрс хєнгєрнє. $My_CDs = array( "CD1" => "CD1", "CD2" => "CD2", "CD3" => "CD4", ..... "CD?" => "CD?", ); Yр дvнд нь бvх СД гээ ганцхан хувьсагчид оруулчихаж болно. Дотор нь хайж, хvссэнээрээ жагсаах боломжтой болно. Маш хэрэгтэй хэрвээ их хэмжээний мэдээлэл агуулсан хувьсагч бvтээж байгаа нєхцєлд. Тэгэхээр Array гэдгийг тодорхой авж vзье. Array нь бусад хувьсагчийн адил нэртэй байна. Гэхдээ онцлог нь олон утга авдаг тул утга бvрийг ялгах vvднээс утга бvрд тvлхvvр vг эсвэл дугаар єгч хийдэг. Энэ дугаар эсвэл тvлхvvр vгээр нь утгыг дуудаж идэвхжvvлнэ ( ажиллуулна ). Тvлхvvр vг буюу дугаар нь тоо эсвэл vг, vг тооны холимог ч байсан болно. Хамгийн гол нь ойлгоход дєхємтэй, богинохон байвал дээр. Энэ тvлхvvр vг буюу дугаар тоо нь [ ба ] ( square brackets ) тэмдгийн хооронд байрладаг. Ондоо нэг Array vvсгэх арга бол ижил хувьсагчийн нэр ба тvлхvvр vг хэрэглэх юм. $List[CD] = "CD1" $List[CD2] = "CD2" $List[CD3] = "CD3" $List[CD4] = "CD4" ...... $List[CD?] = "CD?" гэх мэтээр. Гэхдээ ингэж хийхэд тоогоор дугаарладаг тул цаг vрж болно. Эсвэл бvvр ингэсэн ч болно. $List[ ] = "CD1" $List[ ] = "CD2" $List[ ] = "CD3" $List[ ] = "CD4" .......... $List[ ] = "CD?" ( [ ) ба ( ] ) тэмдгийн хооронд юу ч битгий бич. Yр дvн нь яг адилхан. Хэрвээ жагсаах хэрэгтэй бол яг дээрээсээ эхлэдэг. Нэг анхаарах юм бол РНР-д жагсаалт гаргахдаа 0-ээс эхэлж тоолдог. 0, 1, 2, 3 4 гэх мэтээр. Тэгэхээр $List[ ] = "CD1" ба $List[0] = "CD1" хоёр угтаа адил. $List[5] = "CD5" гэвэл $List[ ] = "CD5" гэсэн утгыг дарж бичдэг. Яг тvлхvvр vгийг нь зааж єгвєл байгаа мэдээллийг нь хvчээр дарж бичдэг гэсэн санаа юм. РНР4 дээр шинээр орж ирсэн MERGE function-р 2 Arrays-г нийлvvлж болно. Эхлээд танд $My_CDs ба $My_CDs2 гэсэн 2 ондоо тєрлийн arrays хувьсагч байлаа гэж бодъё. Гэтэл эдгээрийг "Миний бvх СД" гэсэн ганцхан хувьсагчид оруулмаар байвал бvхнийг шинээр эхлэх хэрэггvй, байгаа хувьсагчаа нийлvvлэхэд л болоо. Код нь: $Variable_name = array_merge( $Variable_name1, $Variable_name2, $Variable_name3 ..... $Variable_name?); $My_all_CDs = array_merge ( $My_CDs, $My_CDs2); Arrays бол маш єргєн хэрэглэгдэх тєрєл бєгєєд String Numbers хоёроос илvv мэдээлэлтэй харьцаж чадна. |