ΠœΠ°ΡΡΠΈΠ²Ρ‹

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π­Ρ‚ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с массивами ΠΈ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ массивами Π½Π°Π±ΠΎΡ€ΠΎΠΌ способов. ΠœΠ°ΡΡΠΈΠ²Ρ‹ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ основу хранСния Π½Π°Π±ΠΎΡ€ΠΎΠ² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, управлСния ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ.

PHP ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ΄Π½ΠΎ- ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π―Π·Ρ‹ΠΊ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΏΠΎΠ»Π½ΡΡŽΡ‚ массивы Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² запроса ΠΊ Π‘Π”, Ρ‚Π°ΠΊ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ массивов ΠΈΠ»ΠΈ строк Ρ„Π°ΠΉΠ»Π° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠ°ΠΊ массив.

Π Π°Π·Π΄Π΅Π» руководства Β«ΠœΠ°ΡΡΠΈΠ²Ρ‹Β» ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассказываСт ΠΎ структурС массивов Π² PHP ΠΈ ΠΊΠ°ΠΊ с массивами Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚. Π Π°Π·Π΄Π΅Π» Β«ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами» рассказываСт ΠΎ способах управлСния массивами.

  • ΠŸΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ константы
  • Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° массивов
  • Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами
    • array β€” Π‘ΠΎΠ·Π΄Π°Ρ‘Ρ‚ массив
    • array_all β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π»ΠΈ элСмСнт массива array удовлСтворяСт callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
    • array_any β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚, содСрТит Π»ΠΈ массив array хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ удовлСтворяСт callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
    • array_change_key_case β€” Π˜Π·ΠΌΠ΅Π½ΡΠ΅Ρ‚ рСгистр ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π² массивС
    • array_chunk β€” Π Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ массив Π½Π° части
    • array_column β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив ΠΈΠ· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ столбца Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ массива
    • array_combine β€” Π‘ΠΎΠ·Π΄Π°Ρ‘Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ массив с ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ ΠΈΠ· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ массива ΠΈ значСниями ΠΈΠ· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ
    • array_count_values β€” ΠŸΠΎΠ΄ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ количСство Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния Π² массивС
    • array_diff β€” ВычисляСт расхоТдСниС массивов
    • array_diff_assoc β€” ВычисляСт расхоТдСниС массивов с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ индСкса
    • array_diff_key β€” ВычисляСт расхоТдСниС массивов, сравнивая ΠΊΠ»ΡŽΡ‡ΠΈ
    • array_diff_uassoc β€” ВычисляСт расхоТдСниС массивов с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ индСкса Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_diff_ukey β€” ВычисляСт расхоТдСниС массивов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ для сравнСния ΠΊΠ»ΡŽΡ‡Π΅ΠΉ
    • array_fill β€” ЗаполняСт массив значСниями
    • array_fill_keys β€” Π‘ΠΎΠ·Π΄Π°Ρ‘Ρ‚ массив ΠΈ заполняСт Π΅Π³ΠΎ значСниями с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌΠΈ ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ
    • array_filter β€” Π€ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ элСмСнты массива Ρ‡Π΅Ρ€Π΅Π· callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_find β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ удовлСтворяСт callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
    • array_find_key β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ удовлСтворяСт callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
    • array_first β€” ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ массива
    • array_flip β€” ΠœΠ΅Π½ΡΠ΅Ρ‚ мСстами ΠΊΠ»ΡŽΡ‡ΠΈ с ΠΈΡ… значСниями Π² массивС
    • array_intersect β€” ВычисляСт пСрСсСчСниС массивов
    • array_intersect_assoc β€” ВычисляСт пСрСсСчСниС массивов с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ индСкса
    • array_intersect_key β€” ВычисляСт пСрСсСчСниС массивов ΠΏΡƒΡ‚Ρ‘ΠΌ сравнСния ΠΊΠ»ΡŽΡ‡Π΅ΠΉ
    • array_intersect_uassoc β€” ВычисляСт пСрСсСчСниС массивов с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ индСкса, сравнивая индСксы Ρ‡Π΅Ρ€Π΅Π· callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_intersect_ukey β€” ВычисляСт пСрСсСчСниС массивов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ для сравнСния ΠΊΠ»ΡŽΡ‡Π΅ΠΉ
    • array_is_list β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚, прСдставляСт Π»ΠΈ массив array список
    • array_key_exists β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚, содСрТит Π»ΠΈ массив ΠΊΠ»ΡŽΡ‡ ΠΈΠ»ΠΈ индСкс
    • array_key_first β€” ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ массива
    • array_key_last β€” ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ послСдний ΠΊΠ»ΡŽΡ‡ массива
    • array_keys β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ всС ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ подмноТСство ΠΊΠ»ΡŽΡ‡Π΅ΠΉ массива
    • array_last β€” ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ послСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ массива
    • array_map β€” ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊ элСмСнтам массивов
    • array_merge β€” Π‘Π»ΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько массивов
    • array_merge_recursive β€” РСкурсивно сливаСт ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько массивов
    • array_multisort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π°Π±ΠΎΡ€ массивов ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅ массивы
    • array_pad β€” ДополняСт массив Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹
    • array_pop β€” Π˜Π·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ послСдний элСмСнт массива
    • array_product β€” ВычисляСт ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ массива
    • array_push β€” ДобавляСт ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива
    • array_rand β€” Π’Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько случайных ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈΠ· массива
    • array_reduce β€” Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ сводит массив ΠΊ СдинствСнному Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Ρ‡Π΅Ρ€Π΅Π· callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_replace β€” ЗамСняСт элСмСнты массива элСмСнтами Π΄Ρ€ΡƒΠ³ΠΈΡ… массивов
    • array_replace_recursive β€” РСкурсивно замСняСт элСмСнты ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ массива элСмСнтами Π΄Ρ€ΡƒΠ³ΠΈΡ… массивов
    • array_reverse β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив с элСмСнтами Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС
    • array_search β€” Π˜Ρ‰Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² массивС, ΠΈ Ссли Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ элСмСнта
    • array_shift β€” Π‘Π΄Π²ΠΈΠ³Π°Π΅Ρ‚ элСмСнты массива Π²Π»Π΅Π²ΠΎ, Π²Ρ‹Ρ‚Π°Π»ΠΊΠΈΠ²Π°Π΅Ρ‚ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт
    • array_slice β€” Π’Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ срСз массива
    • array_splice β€” УдаляСт Ρ‡Π°ΡΡ‚ΡŒ массива ΠΈ замСняСт Π΅Ρ‘ Π½ΠΎΠ²Ρ‹ΠΌΠΈ элСмСнтами
    • array_sum β€” ВычисляСт сумму Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ массива
    • array_udiff β€” ВычисляСт расхоТдСниС массивов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ для сравнСния callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_udiff_assoc β€” ВычисляСт расхоТдСниС Π² массивах с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ индСксов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ для сравнСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_udiff_uassoc β€” ВычисляСт расхоТдСниС Π² массивах с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ индСксов, сравнивая значСния ΠΈ индСксы Ρ‡Π΅Ρ€Π΅Π· callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_uintersect β€” ВычисляСт пСрСсСчСниС массивов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ для сравнСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_uintersect_assoc β€” ВычисляСт пСрСсСчСниС массивов с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ индСксов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ для сравнСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ
    • array_uintersect_uassoc β€” ВычисляСт пСрСсСчСниС массивов с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ индСкса, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ для сравнСния индСксов ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ callback-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
    • array_unique β€” УдаляСт ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ значСния ΠΈΠ· массива
    • array_unshift β€” ДобавляСт ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько элСмСнтов Π² Π½Π°Ρ‡Π°Π»ΠΎ массива
    • array_values β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ значСния массива
    • array_walk β€” ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту массива
    • array_walk_recursive β€” РСкурсивно примСняСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту массива
    • arsort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив Π² порядкС убывания, сохраняя Π°ΡΡΠΎΡ†ΠΈΠ°Ρ†ΠΈΡŽ индСксов
    • asort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив Π² порядкС возрастания, сохраняя Π°ΡΡΠΎΡ†ΠΈΠ°Ρ†ΠΈΡŽ индСксов
    • compact β€” Π‘ΠΎΠ·Π΄Π°Ρ‘Ρ‚ массив ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…
    • count β€” ΠŸΠΎΠ΄ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ количСство элСмСнтов Π² массивС ΠΈΠ»ΠΈ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Countable
    • current β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ элСмСнт массива
    • each β€” Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΏΠ°Ρ€Ρƒ ΠΊΠ»ΡŽΡ‡Π° ΠΈ значСния массива ΠΈ сдвигаСт ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ΄Π½Ρƒ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Π²ΠΏΠ΅Ρ€Ρ‘Π΄
    • end β€” УстанавливаСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ массива Π½Π° послСдний элСмСнт
    • extract β€” ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ элСмСнты массива Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ символов
    • in_array β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅Ρ‚, содСрТится Π»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² массивС
    • key β€” ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ элСмСнта массива
    • key_exists β€” ПсСвдоним array_key_exists
    • krsort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ Π² порядкС убывания
    • ksort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ Π² порядкС возрастания
    • list β€” ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ значСния ΠΊΠ°ΠΊ массиву
    • natcasesort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ СстСствСнной сортировки (natural order) Π±Π΅Π· ΡƒΡ‡Ρ‘Ρ‚Π° рСгистра символов
    • natsort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ «СстСствСнного упорядочивания»
    • next β€” Π‘Π΄Π²ΠΈΠ³Π°Π΅Ρ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ массива Π½Π° ΠΎΠ΄Π½Ρƒ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Π²ΠΏΠ΅Ρ€Ρ‘Π΄
    • pos β€” ПсСвдоним current
    • prev β€” Π‘Π΄Π²ΠΈΠ³Π°Π΅Ρ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ массива Π½Π° ΠΎΠ΄Π½Ρƒ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Π½Π°Π·Π°Π΄
    • range β€” Π‘ΠΎΠ·Π΄Π°Ρ‘Ρ‚ массив, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ элСмСнтов
    • reset β€” УстанавливаСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ массива Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт
    • rsort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив Π² порядкС убывания
    • shuffle β€” ΠŸΠ΅Ρ€Π΅ΠΌΠ΅ΡˆΠΈΠ²Π°Π΅Ρ‚ массив
    • sizeof β€” ПсСвдоним count
    • sort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ
    • uasort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ сравнСния, сохраняя Π°ΡΡΠΎΡ†ΠΈΠ°Ρ†ΠΈΡŽ индСксов
    • uksort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π°ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ сравнСния
    • usort β€” Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ массив ΠΏΠΎ значСниям Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ сравнСния элСмСнтов
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ 9 notes

up
107
applegrew at rediffmail dot com ΒΆ
18 years ago
For newbies like me.

Creating new arrays:-
//Creates a blank array.
$theVariable = array();

//Creates an array with elements.
$theVariable = array("A", "B", "C");

//Creating Associaive array.
$theVariable = array(1 => "http//google.com", 2=> "http://yahoo.com");

//Creating Associaive array with named keys
$theVariable = array("google" => "http//google.com", "yahoo"=> "http://yahoo.com");

Note:
New value can be added to the array as shown below.
$theVariable[] = "D";
$theVariable[] = "E";
up
24
Tyler Bannister ΒΆ
17 years ago
To delete an individual array element use the unset function

For example:

<?PHP
    $arr = array( "A", "B", "C" );
    unset( $arr[1] );
    // now $arr = array( "A", "C" );
?>

Unlink is for deleting files.
up
6
macnimble at gmail dot com ΒΆ
17 years ago
Converting a linear array (like a mysql record set) into a tree, or multi-dimensional array can be a real bugbear. Capitalizing on references in PHP, we can 'stack' an array in one pass, using one loop, like this:

<?php
# array_stack()
# Original idea from:
# http://www.ideashower.com/our_solutions/
#   create-a-parent-child-array-structure-in-one-pass/
function array_stack (&$a, $p = '@parent', $c = '@children')
{
  $l = $t = array();
  foreach ($a AS $key => $val):
    if (!$val[$p]) $t[$key] =& $l[$key];
    else $l[$val[$p]][$c][$key] =& $l[$key];
    $l[$key] = (array)$l[$key] + $val;
  endforeach;
  return $a = array('tree' => $t, 'leaf' => $l);
}

# Example:
$node = array();
$node[1] = array('@parent' => 0, 'title' => 'I am node 1.');
#     ^-----------------------v Link @parent value to key.
$node[2] = array('@parent' => 1, 'title' => 'I am node 2.');
$node[3] = array('@parent' => 2, 'title' => 'I am node 3.');
$node[4] = array('@parent' => 1, 'title' => 'I am node 4.');
$node[5] = array('@parent' => 4, 'title' => 'I am node 5.');

array_stack($node);

$node['leaf'][1]['title'] = 'I am node one.';
$node['leaf'][2]['title'] = 'I am node two.';
$node['leaf'][3]['title'] = 'I am node three.';
$node['leaf'][4]['title'] = 'I am node four.';
$node['leaf'][5]['title'] = 'I am node five.';

echo '<pre>',print_r($node['tree'],TRUE),'</pre>';
?>

Note that there's no parameter checking on the array value, but this is only to keep the function size small. One could easily a quick check in there to make sure the $a parameter was in fact an array.

Hope you find it useful. Huge thanks to Nate Weiner of IdeaShower.com for providing the original function I built on.
up
2
webmaster at infoproducts dot x10hosting dot com ΒΆ
17 years ago
New value can also be added to the array as shown below.
$theVariable["google"] = "http//google.com";
or
$theVariable["1"] = "http//google.com";
up
2
dragos dot rusu at NOSPAM dot bytex dot ro ΒΆ
16 years ago
If an array item is declared with key as NULL, array key will automatically be converted to empty string '', as follows:

<?php
$a = array(
    NULL => 'zero',
    1    => 'one',
    2    => 'two');

// This will show empty string for key associated with "zero" value
var_dump(array_keys($a));

// Array elements are shown
reset($a);
while( key($a) !== NULL )
{
  echo key($a) . ": ".current($a) . "<br>";// PHP_EOL
  next($a);
}

// Array elements are not shown
reset($a);
while( key($a) != NULL ) // '' == null   => no iteration will be executed
{
  echo key($a) . ": ".current($a) . "<br>";// PHP_EOL
  next($a);
}
up
0
sunear at gmail dot com ΒΆ
16 years ago
Made this function to delete elements in an array;

<?php

function array_del_elm($input_array, $del_indexes) {
    if (is_array($del_indexes)) {
        $indexes = $del_indexes;
    } elseif(is_string($del_indexes)) {
        $indexes = explode($del_indexes, " ");
    } elseif(is_numeric($del_indexes)) {
        $indexes[0] = (integer)$del_indexes;
    } else return;
    $del_indexes = null;
    
    $cur_index = 0;
    if (sort($indexes)) for($i=0; $i<count($input_array); $i++) {
        if ($i == $indexes[$cur_index]) {
            $cur_index++;
            if ($cur_index == count($indexes)) return $output_array;
            continue;
        }
        $output_array[] = $input_array[$i];
    }
    return $output_array;
}

?>

but then i saw the methods of doing the same by Tyler Bannister & Paul, could see that theirs were faster, but had floors regarding deleting multiple elements thus support of several ways of giving parameters. I combined the two methods to this to this:

<?php

function array_del_elm($target_array, $del_indexes) {
    if (is_array($del_indexes)) {
        $indexes = $del_indexes;
    } elseif(is_string($del_indexes)) {
        $indexes = explode($del_indexes, " ");
    } elseif(is_numeric($del_indexes)) {
        $indexes[0] = (integer)$del_indexes;
    } else return;
    unset($del_indexes);
    
    for($i=0; $i<count($indexes); $i++) {
        unset($target_array[$indexes[$i]]);
    }
    return $target_array;
}

?>

Fast, compliant and functional ;)
up
-2
andyd273 at gmail dot com ΒΆ
17 years ago
A small correction to Endel Dreyer's PHP array to javascript array function. I just changed it to show keys correctly:

            function array2js($array,$show_keys)
            {
                $dimensoes = array();
                $valores = array();
               
                $total = count ($array)-1;
                $i=0;
                foreach($array as $key=>$value){
                    if (is_array($value)) {
                        $dimensoes[$i] = array2js($value,$show_keys);
                        if ($show_keys) $dimensoes[$i] = '"'.$key.'":'.$dimensoes[$i];
                    } else {
                        $dimensoes[$i] = '"'.addslashes($value).'"';
                        if ($show_keys) $dimensoes[$i] = '"'.$key.'":'.$dimensoes[$i];
                    }
                    if ($i==0) $dimensoes[$i] = '{'.$dimensoes[$i];
                    if ($i==$total) $dimensoes[$i].= '}';
                    $i++;
                }
                return implode(',',$dimensoes);
            }
up
-4
justin at jmfrazier dot com ΒΆ
6 years ago
Using null as the key when setting an array value is NOT the same as using empty [].
<?php
  $null = null;
  $testArray = [];
  $testArray[$null] = 1;
  $testArray[$null] = 2;
  $testArray[$null] = 3;
  $testArray[$null] = 4;
  var_dump($testArray);
?>
Output:
array(1) {
  '' =>
  int(4)
}

<?php
  $testArray = [];
  $testArray[null] = 1;
  $testArray[null] = 2;
  $testArray[null] = 3;
  $testArray[null] = 4;
  var_dump($testArray);
?>
Output:
array(1) {
  '' =>
  int(4)
}

<?php
  $testArray = [];
  $testArray[] = 1;
  $testArray[] = 2;
  $testArray[] = 3;
  $testArray[] = 4;
  var_dump($testArray);
?>
Output:
array(4) {
  [0] =>
  int(1)
  [1] =>
  int(2)
  [2] =>
  int(3)
  [3] =>
  int(4)
}
up
-4
info at curtinsNOSPAMcreations dot com ΒΆ
15 years ago
Another way to create a multidimensional array that looks a lot cleaner is to use json_decode.  (Note that this probably adds a touch of overhead, but it sure does look nicer.)  You can of course add as many levels and as much formatting as you'd like to the string you then decode.  Don't forget that json requires " around values, not '!!  (So, you can't enclose the json string with " and use ' inside the string.)

As an example:

<?php
    $myarray['blah'] = json_decode('[
        {"label":"foo","name":"baz"},
        {"label":"boop","name":"beep"}
    ]',true);

print_r($myarray)
?>
returns:

Array
(
    [blah] => Array
        (
            [0] => Array
                (
                    [label] => foo
                    [name] => baz
                )
 
            [1] => Array
                (
                    [label] => boop
                    [name] => beep
                )
        )
)