Bird
Raised Fist0
PHPprogramming~3 mins

Why Associative array creation in PHP? - Purpose & Use Cases

Choose your learning style10 modes available
The Big Idea

What if you could find any friend's number instantly without flipping through pages?

The Scenario

Imagine you want to store a list of friends' phone numbers. You write each name and number on a piece of paper. When you want to find a number, you have to search through all papers one by one.

The Problem

This manual way is slow and frustrating. You might lose papers or write numbers wrong. Finding a number takes too long because you must check every paper until you find the right name.

The Solution

Associative arrays let you store data with labels (keys) like names, so you can quickly find the matching value (phone number) without searching through everything. It's like having a perfect, organized phone book inside your program.

Before vs After
✗ Before
$phone1 = '123-456';
$phone2 = '789-012';
// Need to remember which number belongs to whom
✓ After
$phones = ['Alice' => '123-456', 'Bob' => '789-012'];
// Access by name directly: $phones['Alice']
What It Enables

You can quickly store and retrieve data by meaningful names, making your programs smarter and easier to write.

Real Life Example

Think of a contact list app where you tap a name and instantly see the phone number. Associative arrays make this instant lookup possible behind the scenes.

Key Takeaways

Associative arrays store data with named keys for easy access.

They save time by avoiding slow manual searches.

They help organize data like a digital phone book.

Practice

(1/5)
1. Which of the following is the correct way to create an associative array in PHP with keys "name" and "age"?
easy
A. $person = ("name" => "Alice", "age" => 30);
B. $person = {"name": "Alice", "age": 30};
C. $person = array("Alice", 30);
D. $person = ["name" => "Alice", "age" => 30];

Solution

  1. Step 1: Understand PHP associative array syntax

    Associative arrays use square brackets with key => value pairs.
  2. Step 2: Identify correct syntax among options

    $person = ["name" => "Alice", "age" => 30]; uses square brackets and => correctly; others use invalid syntax.
  3. Final Answer:

    $person = ["name" => "Alice", "age" => 30]; -> Option D
  4. Quick Check:

    Associative array = key => value pairs [OK]
Hint: Use square brackets and => for associative arrays [OK]
Common Mistakes:
  • Using parentheses instead of square brackets
  • Using colon (:) instead of =>
  • Creating indexed arrays instead of associative
2. Which of the following PHP code snippets will cause a syntax error when creating an associative array?
easy
A. $data = ["key1" : "value1", "key2" : "value2"];
B. $data = array("key1" => "value1", "key2" => "value2");
C. $data = ["key1" => "value1", "key2" => "value2"];
D. $data = ['key1' => 'value1', 'key2' => 'value2'];

Solution

  1. Step 1: Check the syntax for key-value pairs

    PHP uses => to assign values to keys, not colon (:).
  2. Step 2: Identify the invalid syntax

    $data = ["key1" : "value1", "key2" : "value2"]; uses colon (:) which is invalid in PHP associative arrays.
  3. Final Answer:

    $data = ["key1" : "value1", "key2" : "value2"]; -> Option A
  4. Quick Check:

    Use => not : for keys in PHP arrays [OK]
Hint: Remember PHP uses =>, not : for associative arrays [OK]
Common Mistakes:
  • Using colon (:) instead of =>
  • Mixing array() and [] syntax incorrectly
  • Missing commas between pairs
3. What will be the output of the following PHP code?
$arr = ["fruit" => "apple", "color" => "red"];
echo $arr["color"];
medium
A. red
B. color
C. apple
D. fruit

Solution

  1. Step 1: Understand array key access

    Accessing $arr["color"] returns the value for key "color".
  2. Step 2: Identify the value for key "color"

    Value is "red", so echo outputs "red".
  3. Final Answer:

    red -> Option A
  4. Quick Check:

    Key "color" = "red" [OK]
Hint: Access values by keys with $array["key"] [OK]
Common Mistakes:
  • Confusing keys and values
  • Using wrong quotes or missing quotes
  • Trying to access with dot notation
4. Identify the error in the following PHP code that tries to create an associative array:
$info = ["name" => "John", "age" = 25];
medium
A. Missing comma between elements
B. Keys should not be in quotes
C. Using = instead of => for key-value pair
D. Array must use array() syntax

Solution

  1. Step 1: Check key-value assignment syntax

    PHP requires => to assign values to keys, not =.
  2. Step 2: Locate incorrect assignment

    "age" = 25 uses = instead of =>, causing syntax error.
  3. Final Answer:

    Using = instead of => for key-value pair -> Option C
  4. Quick Check:

    Use => for key-value pairs [OK]
Hint: Use =>, not =, between key and value [OK]
Common Mistakes:
  • Using single = instead of =>
  • Omitting commas between pairs
  • Not quoting string keys
5. You want to create an associative array in PHP that maps product names to their prices, but only include products with a price greater than 20. Which code correctly creates this filtered associative array?
hard
A. $products = ["apple" => 15, "banana" => 25, "cherry" => 30]; $filtered = []; foreach ($products as $name, $price) { if ($price > 20) { $filtered[$name] = $price; } }
B. $products = ["apple" => 15, "banana" => 25, "cherry" => 30]; $filtered = []; foreach ($products as $name => $price) { if ($price > 20) { $filtered[$name] = $price; } }
C. $products = ["apple" => 15, "banana" => 25, "cherry" => 30]; $filtered = array_filter($products, function($name, $price) { return $price > 20; });
D. $products = ["apple" => 15, "banana" => 25, "cherry" => 30]; $filtered = []; foreach ($products as $price => $name) { if ($price > 20) { $filtered[$name] = $price; } }

Solution

  1. Step 1: Understand foreach key-value syntax

    Use foreach ($array as $key => $value) to access keys and values correctly.
  2. Step 2: Filter products with price > 20

    $products = ["apple" => 15, "banana" => 25, "cherry" => 30]; $filtered = []; foreach ($products as $name => $price) { if ($price > 20) { $filtered[$name] = $price; } } correctly checks price and assigns filtered items to new array.
  3. Final Answer:

    The code using foreach ($products as $name => $price) -> Option B
  4. Quick Check:

    foreach ($arr as $key => $value) for associative arrays [OK]
Hint: Use foreach ($arr as $key => $value) to access associative arrays [OK]
Common Mistakes:
  • Swapping key and value variables in foreach
  • Using incorrect foreach syntax with two variables separated by comma
  • Misusing array_filter with wrong callback parameters
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard