Масивите в PHP са функционални носители на данни, в които можем да съхраняваме един или повече данни. За разлика от променливите, те могат да съхраняват много данни отделно една от друга.
Масивите в PHP се създават по два начина:

  1. array() предварително дефинирана функция (предварително дефинирана функция)
  2. [] с квадратни скоби

Правила за създаване на PHP масив

  • Букви, цифри (a-z A-Z 0-9) и _ (долна черта) могат да се използват в имена на ключове, които да бъдат дефинирани за елементи на масив.
  • Думите, запазени от PHP, не могат да се използват при дефиниране на имена на ключове за елементи на масив.
  • Имената на ключовете, дефинирани за елементите на масива, са чувствителни към главни и малки букви.
  • Ако ключ не е дефиниран за елемент от масив, той се създава автоматично.
  • => знаците трябва да бъдат поставени между всеки ключ и стойност в масива.
  • Ако в масива ще бъдат създадени повече от един елемент, след всеки елемент трябва да се постави , (запетая).
    Не е задължително да поставите , (запетая) в края на последния елемент в масив с множество елементи.

Предложения и съвети за създаване на PHP масив

  • Когато именувате телевизионни сериали, трябва да се вземат предвид избраните правила за именуване. Например, именуването на масив като $Array и извикването на другия масив като $array не се препоръчва за четливост.
  • Ако не дефинираме ключове на елементите в масивите, а само стойности, ключовете се генерират автоматично от PHP. Първият ключ е 0 и всеки ключ се увеличава с 1.
  • Функцията print_r() на HTML, която използваме за отпечатване на масиви
    Можем да гарантираме, че масивите се отпечатват с по-добър външен вид, като ги затворим в <pre> тагове.
  • Добавянето или добавянето на запетая към последния елемент в масивите не променя нищо. Въпреки това се препоръчва да се добави запетая към последния елемент, за да се предотвратят грешки поради разсеяност и да се подобри четливостта.
  • Не е необходимо да добавяте само променливи или директни данни като стойности към масиви. Може да се присвои константа или функция.
  • Не се препоръчва използването на специални символи и турски символи, различни от utf8, тирета и долни черти в ключовите структури в масивите.

Синтаксис на PHP масив

Споменахме, че масивите могат да се създават по два различни начина в PHP. В първия метод ще използваме функцията по подразбиране, наречена array(). Добавихме примера по-долу.

$friends = array('can', 'sevgi');

Друг метод за създаване на масиви в PHP е използването на квадратни скоби. Можете да намерите примера по-долу.

$friends = ['cemil', 'seda'];

Видяхме структурата на масив без ключ в PHP, съдържаща само стойности в примерите по-горе. Сега ще видим структурата на масива с ключове. Нека разгледаме примера.

'best_friend' => 'cemil',
'school_friend' => 'seda',
'home_friend' => 'mehmet',
);

В горния пример използвахме оператора => при присвояване на стойности. Когато присвояваме стойности на масиви, използваме оператора за присвояване на масиви '=>', а не оператора за изравняване '='.

В примера по-долу ще видим структурата на PHP многомерен масив. Когато създаваме множество масиви, дефинираме втория масив в стойностната част на първия масив.

$friends = array(
    'best_friends'   => array(
        'melih',
        'deniz',
    ),
    'school_friends' => array(
        'eda',
        'erdinç',
    ),
);

Отпечатване на PHP масиви

Използваме функцията print_r() за отпечатване на масиви в PHP. В примера по-долу създадохме масив с име $fruits и дадохме стойностите на диня, банан и грозде. След това отпечатахме масива с помощта на функцията print_r().

$fruits = array(
    'karpuz',
    'üzüm',
    'muz',
);
print_r($fruits);
/*
 * Çıktı:
 Array ( [0] => karpuz [1] => üzüm [2] => muz )
 */

В примера по-долу отпечатахме масива, който създадохме в предишния пример, в по-четлива форма, използвайки HTML <pre> тагове.

$fruits = array(
    'karpuz',
    'üzüm',
    'muz',
);
echo '<pre>';
print_r($fruits);
echo '</pre>';
/* 
 * Çıktı: 
Array
(
    [0] => karpuz
    [1] => üzüm
    [2] => muz
)
 */

Можем да имаме достъп до данните от множество масиви с функцията print_r().

$friends = array(
'best_friends' => array(
    'melih',
    'deniz',
    ),
'school_friends' => array(
    'eda', 
    'erdinç',
    ),
);
print_r($friends);
// Çıktı: Array ( [best_friends] => Array ( [0] => melih [1] => deniz ) [school_friends] => Array ( [0] => eda [1] => erdinç ) )

Ако използваме HTML pre тагове при достъп до данните от множество масиви с функцията print_r(), получаваме изход в по-четлива структура.

$friends = array(
'best_friends' => array(
    'melih',
    'deniz',
    ),
'school_friends' => array(
    'eda', 
    'erdinç',
    ),
);
echo '<pre>';
print_r($friends);
echo '</pre>';
/*
 * Çıktı:
 Array
(
    [best_friends] => Array
        (
            [0] => melih
            [1] => deniz
        )
    [school_friends] => Array
        (
            [0] => eda
            [1] => erdinç
        )
)
*/

Отпечатване на масиви с ехо

В примера по-долу се опитахме да отпечатаме масива, който създадохме в предишния пример с echo, но не можахме да го отпечатаме. Получихме изхода на масива като изход. Така че защо?

$fruits = array(
    'karpuz',
    'üzüm',
    'muz',
);
echo $fruits;
// Çıktı: Array

Не можем да отпечатаме цели масиви с формиране на PHP ехо. PHP има print_r() за отпечатване на цели масиви. Ако обаче искаме да отпечатаме само един елемент от масива, можем да използваме echo. В примера по-долу получихме достъп до първия ключ от масива. В раздела с предложения и съвети по-горе споменахме, че ако не създадем ключ, докато създаваме масив, той ще бъде създаден автоматично. PHP автоматично създаде ключовете, започващи от 0, и ние получихме достъп до данните на първия ключ. Получихме "грозде" като изход.

$fruits = array(
    'karpuz',
    'üzüm',
    'muz',
);
echo $fruits[1];
// Çıktı: üzüm

И така, ако създадем ключ, как ще имаме достъп до данните на ключа с ехо? В примера по-долу създадохме ключ и осъществихме достъп до данните за ключа, като написахме името на ключа с ехо.

$fruits = array(
    'fruit1' => 'karpuz',
    'fruit2' => 'üzüm',
    'fruit3' => 'muz',
);
echo $fruits['fruit3'];
// Çıktı: muz

За достъп до данните от множество масиви създаваме втората квадратна скоба. Нека разгледаме примера по-долу. В този пример използвахме структурата с множество масиви. Първо осъществихме достъп до масива school_friends в масива friends, а след това получихме достъп до данните на първия ключ в масива school_friends.

$friends = array(
'best_friends' => array(
    'melih',
    'deniz',
    ),
'school_friends' => array(
    'eda', 
    'erdinç',
    ),
);
echo $friends['school_friends'][1];
// Çıktı: erdinç