Pole v PHP jsou funkční nosiče dat, do kterých můžeme uložit jedno nebo více dat. Na rozdíl od proměnných mohou obsahovat mnoho dat odděleně od sebe.
Pole v PHP se vytvářejí dvěma způsoby:

  1. předdefinovaná funkce array() (předdefinovaná funkce)
  2. [] s hranatými závorkami

Pravidla vytváření PHP Array

  • Písmena, čísla (a-z A-Z 0-9) a _ (podtržítko) lze použít v názvech klíčů, které mají být definovány pro prvky pole.
  • Slova rezervovaná PHP nelze použít při definování názvů klíčů pro prvky pole.
  • Názvy klíčů definované pro prvky pole rozlišují velká a malá písmena.
  • Pokud pro prvek pole není definován klíč, klíč se vytvoří automaticky.
  • => znaky musí být umístěny mezi každý klíč a hodnotu v poli.
  • Pokud bude v poli vytvořeno více než jeden prvek, měla by být za každým prvkem umístěna , (čárka).
    Je volitelné umístit , (čárku) na konec posledního prvku v poli s více prvky.

Návrhy a tipy pro vytváření PHP Array

  • Při pojmenovávání televizních seriálů je třeba vzít v úvahu zvolená pravidla konvence pojmenování. Například pojmenování pole jako $Array a volání druhého pole jako $array se kvůli čitelnosti nedoporučuje.
  • Pokud na prvcích v polích nedefinujeme klíče, ale pouze hodnoty, jsou klíče automaticky generovány PHP. První klávesa je 0 a každá klávesa se zvyšuje o 1.
  • HTML funkce print_r(), kterou používáme k tisku polí
    Lepší vzhled polí zajistíme tak, že je uzavřeme do značek < pre>.
  • Přidáním nebo přidáním čárky k poslednímu prvku v polích se nic nezmění. Doporučuje se však přidat na poslední prvek čárku, aby se předešlo chybám způsobeným roztržitostí a aby se zvýšila čitelnost.
  • Do polí není nutné přidávat pouze proměnné nebo přímá data jako hodnoty. Lze přiřadit konstantu nebo funkci.
  • V klíčových strukturách v polích se nedoporučuje používat jiné speciální znaky a turecké znaky než utf8, pomlčky a podtržítka.

Syntaxe PHP Array

Zmínili jsme, že pole lze v PHP vytvářet dvěma různými způsoby. V první metodě použijeme výchozí funkci nazvanou array(). Níže jsme přidali příklad.

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

Další metodou vytváření polí v PHP je použití hranatých závorek. Příklad najdete níže.

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

Viděli jsme bezklíčovou strukturu pole v PHP obsahující pouze hodnoty ve výše uvedených příkladech. Nyní uvidíme klíčovanou strukturu pole. Podívejme se na příklad.

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

Ve výše uvedeném příkladu jsme při přiřazování hodnot použili operátor =>. Při přiřazování hodnot polím používáme operátor přiřazení pole '=>', nikoli operátor ekvalizace '='.

V příkladu níže uvidíme vícerozměrnou strukturu pole PHP. Při vytváření více polí definujeme druhé pole v hodnotové části prvního pole.

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

Tisk PHP polí

K tisku polí v PHP používáme funkci print_r(). V níže uvedeném příkladu jsme vytvořili pole s názvem $fruits a dali jsme hodnoty melounu, banánu a hroznu. Poté jsme pole vytiskli pomocí funkce print_r().

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

V níže uvedeném příkladu jsme vytiskli pole, které jsme vytvořili v předchozím příkladu, ve srozumitelnější podobě pomocí HTML < pre> tagů.

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

K datům více polí můžeme přistupovat pomocí funkce 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ç ) )

Pokud použijeme HTML pre tagy při přístupu k datům více polí pomocí funkce print_r(), dostaneme výstup v čitelnější struktuře.

$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ç
        )
)
*/

Tisková pole s ozvěnou

V níže uvedeném příkladu jsme se pokusili vytisknout pole, které jsme vytvořili v předchozím příkladu, pomocí echa, ale nepodařilo se nám jej vytisknout. Jako výstup jsme dostali výstup Array. Tak proč?

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

Nemůžeme tisknout celá pole s vytvářením PHP echo. PHP má print_r() pro tisk celých polí. Pokud však chceme vytisknout pouze jeden prvek pole, můžeme použít echo. V níže uvedeném příkladu jsme přistoupili k prvnímu klíči pole. V sekci návrhy a tipy výše jsme zmínili, že pokud nevytvoříme klíč při vytváření pole, vytvoří se automaticky. PHP automaticky vytvořilo klíče počínaje 0 a my jsme získali přístup k datům prvního klíče. Jako výstup jsme dostali "hrozny".

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

Pokud tedy vytvoříme klíč, jak budeme přistupovat k datům klíče pomocí echa? V níže uvedeném příkladu jsme vytvořili klíč a přistupovali k datům klíče zadáním názvu klíče s echem.

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

Pro přístup k datům více polí vytvoříme druhou hranatou závorku. Podívejme se na příklad níže. V tomto příkladu jsme použili multi-array strukturu. Nejprve jsme přistoupili k poli school_friends v poli přátel a poté jsme přistoupili k datům prvního klíče v poli school_friends.

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