Associative arrays

Keys and values

An associative array maps string keys to values, like a small dictionary: each name points to exactly one value. The => arrow pairs a key with its value when the array is built.

$user = ["name" => "Ada", "age" => 36]; echo $user["name"];

Iterate with key and value

The two-variable foreach form hands you both halves of every pair: the key on the left, the value on the right. It is the standard way to print settings, render option lists, and transform maps.

$user = ["name" => "Ada", "age" => 36]; foreach ($user as $key => $value) { echo $key . ": " . $value; }

isset, empty and array_key_exists

Three checks answer three different questions. isset is false for missing keys and for keys holding null. array_key_exists cares only about the key itself, so it stays true even when the value is null. empty treats missing, null, empty string, zero, and empty array all as empty.

$data = ["a" => null]; var_dump(isset($data["a"])); // false var_dump(array_key_exists("a", $data)); // true var_dump(empty($data["b"])); // true

Sort by value and key

Plain sort reorders values and renumbers keys, which destroys a map. Use asort to order by value while keeping keys attached, and ksort to order by key.

$scores = ["bob" => 12, "ada" => 30, "cid" => 7]; asort($scores); ksort($scores); print_r($scores);

Next: Functions

Автор статьи: Arthur Isaev