Bird
Raised Fist0
PHPprogramming~20 mins

Array key and value extraction in PHP - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Array Key and Value Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of array_keys with numeric keys
What is the output of the following PHP code?
PHP
<?php
$array = [10 => 'a', 20 => 'b', 30 => 'c'];
print_r(array_keys($array));
?>
AArray ( [0] => 10 [1] => 20 [2] => 30 )
BArray ( [0] => a [1] => b [2] => c )
CArray ( [10] => 0 [20] => 1 [30] => 2 )
DArray ( [0] => 0 [1] => 1 [2] => 2 )
Attempts:
2 left
💡 Hint
array_keys returns the keys of the array, not the values.
❓ Predict Output
intermediate
2:00remaining
Output of array_values with associative keys
What will this PHP code output?
PHP
<?php
$array = ['x' => 100, 'y' => 200, 'z' => 300];
print_r(array_values($array));
?>
AArray ( [0] => 100 [1] => 200 [2] => 300 )
BArray ( [0] => x [1] => y [2] => z )
CArray ( [x] => 100 [y] => 200 [z] => 300 )
DArray ( [100] => 0 [200] => 1 [300] => 2 )
Attempts:
2 left
💡 Hint
array_values returns the values of the array, ignoring keys.
❓ Predict Output
advanced
2:00remaining
Result of array_keys with search value
What does this PHP code output?
PHP
<?php
$array = ['a' => 1, 'b' => 2, 'c' => 1, 'd' => 3];
print_r(array_keys($array, 1));
?>
AArray ( )
BArray ( [0] => a [1] => c )
CArray ( [a] => 1 [c] => 1 )
DArray ( [0] => 1 [1] => 1 )
Attempts:
2 left
💡 Hint
array_keys can accept a second parameter to filter keys by value.
❓ Predict Output
advanced
2:00remaining
Output of array_values on mixed keys
What is the output of this PHP code?
PHP
<?php
$array = [5 => 'apple', 'color' => 'red', 10 => 'banana'];
print_r(array_values($array));
?>
AArray ( [apple] => 0 [red] => 1 [banana] => 2 )
BArray ( [5] => apple [color] => red [10] => banana )
CArray ( [0] => 5 [1] => color [2] => 10 )
DArray ( [0] => apple [1] => red [2] => banana )
Attempts:
2 left
💡 Hint
array_values returns values reindexed with numeric keys starting at 0.
❓ Predict Output
expert
2:00remaining
Count of keys returned by array_keys with strict search
What is the output of this PHP code?
PHP
<?php
$array = [0 => '0', 1 => 0, 2 => false, 3 => null];
$result = array_keys($array, 0, true);
echo count($result);
?>
A2
B3
C1
D4
Attempts:
2 left
💡 Hint
The third parameter in array_keys enforces strict type comparison.

Practice

(1/5)
1. Which PHP function is used to extract all the keys from an array?
easy
A. array_map()
B. array_values()
C. array_keys()
D. array_filter()

Solution

  1. Step 1: Understand the function purpose

    array_keys() returns all keys from an array.
  2. Step 2: Compare with other functions

    array_values() returns values, not keys; others do different tasks.
  3. Final Answer:

    array_keys() -> Option C
  4. Quick Check:

    Keys extraction = array_keys() [OK]
Hint: Keys come from array_keys(), values from array_values() [OK]
Common Mistakes:
  • Confusing array_keys() with array_values()
  • Using array_map() to get keys
  • Trying to get keys with array_filter()
2. Which of the following is the correct syntax to get all values from an array $arr in PHP?
easy
A. array_values($arr);
B. array_keys($arr);
C. values_array($arr);
D. get_values($arr);

Solution

  1. Step 1: Identify the correct function name

    The function to get values is array_values().
  2. Step 2: Check syntax correctness

    Correct syntax is array_values($arr); with parentheses and variable inside.
  3. Final Answer:

    array_values($arr); -> Option A
  4. Quick Check:

    Values extraction = array_values() [OK]
Hint: Values come from array_values(), keys from array_keys() [OK]
Common Mistakes:
  • Using array_keys() to get values
  • Using non-existent functions like values_array()
  • Missing parentheses in function call
3. What will be the output of the following PHP code?
$arr = ['a' => 1, 'b' => 2, 'c' => 3];
print_r(array_keys($arr));
medium
A. Array ( [0] => 1 [1] => 2 [2] => 3 )
B. Array ( [0] => 'a' [1] => 'b' [2] => 'c' )
C. Array ( [a] => 1 [b] => 2 [c] => 3 )
D. Array ( [0] => a [1] => b [2] => c )

Solution

  1. Step 1: Understand array_keys() output

    It returns an indexed array of all keys from the input array.
  2. Step 2: Analyze given array keys

    Keys are strings 'a', 'b', 'c', so output is an indexed array with these strings.
  3. Final Answer:

    Array ( [0] => a [1] => b [2] => c ) -> Option D
  4. Quick Check:

    array_keys(['a'=>1,...]) = ['a','b','c'] [OK]
Hint: array_keys() returns keys as indexed array [OK]
Common Mistakes:
  • Confusing keys with values in output
  • Expecting associative array output
  • Including quotes in output keys
4. Identify the error in this PHP code snippet:
$arr = ['x' => 10, 'y' => 20];
$keys = array_values($arr);
print_r($keys);
medium
A. array_values() should be array_keys() to get keys
B. Missing semicolon after array declaration
C. print_r() cannot print arrays
D. Variable $keys is not defined

Solution

  1. Step 1: Understand the goal

    The code tries to get keys but uses array_values() which returns values.
  2. Step 2: Correct function usage

    To get keys, use array_keys() instead of array_values().
  3. Final Answer:

    array_values() should be array_keys() to get keys -> Option A
  4. Quick Check:

    Keys need array_keys(), not array_values() [OK]
Hint: Use array_keys() for keys, array_values() for values [OK]
Common Mistakes:
  • Mixing up array_keys() and array_values()
  • Assuming print_r() can't print arrays
  • Ignoring correct variable definitions
5. Given the array $data = ['apple' => 3, 'banana' => 0, 'cherry' => 5, 'date' => 0];, which PHP code correctly extracts only the keys with non-zero values?
hard
A. $keys = array_keys($data);
B. $keys = array_keys(array_filter($data));
C. $keys = array_values(array_filter($data));
D. $keys = array_filter(array_keys($data));

Solution

  1. Step 1: Filter array to keep non-zero values

    array_filter($data) removes entries with zero values.
  2. Step 2: Extract keys from filtered array

    array_keys() gets keys from the filtered array, giving only keys with non-zero values.
  3. Final Answer:

    $keys = array_keys(array_filter($data)); -> Option B
  4. Quick Check:

    Filter then keys = array_keys(array_filter()) [OK]
Hint: Filter first, then get keys with array_keys(array_filter()) [OK]
Common Mistakes:
  • Using array_values() instead of array_keys() after filtering
  • Not filtering before extracting keys
  • Filtering keys instead of values
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