Bird
Raised Fist0
PHPprogramming~5 mins

Named arguments in PHP - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What are named arguments in PHP?
Named arguments allow you to pass values to a function by specifying the parameter name, not just the order. This makes code clearer and lets you skip optional parameters.
Click to reveal answer
beginner
How do named arguments improve function calls?
They improve readability by showing which value goes to which parameter. They also let you pass arguments in any order and skip optional ones.
Click to reveal answer
beginner
Show an example of calling a PHP function with named arguments.
Example:<br><code>function greet(string $name, string $greeting = "Hello") {<br>  echo "$greeting, $name!";<br>}<br>greet(name: "Alice", greeting: "Hi");</code>
Click to reveal answer
intermediate
Can you mix positional and named arguments in PHP function calls?
Yes, but positional arguments must come first. After that, you can use named arguments in any order.
Click to reveal answer
intermediate
What happens if you use a named argument that does not exist in the function?
PHP will throw a fatal error because the function does not have a parameter with that name.
Click to reveal answer
Which of the following is a correct way to call a function with named arguments in PHP?
Afoo(bar: 10, baz: 20);
Bfoo(10: bar, 20: baz);
Cfoo(bar = 10, baz = 20);
Dfoo(10, 20);
Can you skip optional parameters when using named arguments in PHP?
AOnly if the function has no default values.
BNo, you must pass all parameters in order.
COnly if the parameters are at the end.
DYes, by naming only the parameters you want to pass.
What is the rule about mixing positional and named arguments in PHP?
APositional arguments must come before named arguments.
BNamed arguments must come before positional arguments.
CYou cannot mix positional and named arguments.
DOrder does not matter.
What error occurs if you use a named argument that does not match any parameter?
AThe function uses the default value.
BA fatal error is thrown.
CThe argument is ignored.
DA warning is shown but code runs.
Which PHP version introduced named arguments?
APHP 7.0
BPHP 7.4
CPHP 8.0
DPHP 5.6
Explain how named arguments work in PHP and why they are useful.
Think about how naming parameters helps understand code better.
You got /4 concepts.
    Describe the rules for mixing positional and named arguments in PHP function calls.
    Remember the order and naming rules.
    You got /4 concepts.

      Practice

      (1/5)
      1.

      What is the main benefit of using named arguments in PHP functions?

      easy
      A. Named arguments make functions run faster.
      B. You must always provide all arguments in order.
      C. You can specify arguments by name and change their order.
      D. They allow you to define new functions inside existing ones.

      Solution

      1. Step 1: Understand named arguments concept

        Named arguments let you specify function parameters by their names instead of position.
      2. Step 2: Identify the benefit

        This allows changing the order of arguments and skipping optional ones, improving readability.
      3. Final Answer:

        You can specify arguments by name and change their order. -> Option C
      4. Quick Check:

        Named arguments = specify by name and reorder [OK]
      Hint: Named arguments let you reorder parameters by name [OK]
      Common Mistakes:
      • Thinking named arguments speed up execution
      • Believing all arguments must be given in order
      • Confusing named arguments with function definitions
      2.

      Which of the following is the correct syntax to call a function greet with named arguments name and age?

      function greet($name, $age) { return "Hello $name, you are $age."; }
      easy
      A. greet("Alice", age: 30);
      B. greet(name = "Alice", age = 30);
      C. greet(age => 30, name => "Alice");
      D. greet(name: "Alice", age: 30);

      Solution

      1. Step 1: Recall named argument syntax in PHP

        Named arguments use the syntax paramName: value when calling functions.
      2. Step 2: Check each option

        greet(name: "Alice", age: 30); uses name: "Alice" and age: 30, which is correct syntax.
      3. Final Answer:

        greet(name: "Alice", age: 30); -> Option D
      4. Quick Check:

        Named argument syntax = paramName: value [OK]
      Hint: Use colon : for named arguments in calls [OK]
      Common Mistakes:
      • Using => instead of : for named arguments
      • Using = instead of : in calls
      • Mixing positional and named arguments incorrectly
      3.

      What will be the output of the following PHP code?

      function describe($color, $shape) {
          return "A $color $shape.";
      }
      echo describe(shape: "circle", color: "red");
      medium
      A. A red circle.
      B. A red.
      C. Syntax error.
      D. A circle red.

      Solution

      1. Step 1: Understand named argument order

        Named arguments allow changing the order of parameters when calling the function.
      2. Step 2: Substitute values in function

        Here, shape is "circle" and color is "red". The return string is "A $color $shape.", so it becomes "A red circle.".
      3. Final Answer:

        A red circle. -> Option A
      4. Quick Check:

        Named arguments reorder parameters = "A red circle." [OK]
      Hint: Named arguments reorder parameters without error [OK]
      Common Mistakes:
      • Assuming order must match function definition
      • Expecting syntax error from reordered named arguments
      • Mixing up parameter names and values
      4.

      Identify the error in the following PHP code using named arguments:

      function multiply($x, $y) {
          return $x * $y;
      }
      echo multiply(y: 5, 3);
      medium
      A. Function multiply is undefined.
      B. Positional argument after named argument causes error.
      C. Missing colon in named argument syntax.
      D. No error; code runs fine.

      Solution

      1. Step 1: Check argument order rules

        In PHP, positional arguments must come before named arguments when calling a function.
      2. Step 2: Analyze the call

        The call uses a named argument y: 5 first, then a positional argument 3, which is invalid syntax.
      3. Final Answer:

        Positional argument after named argument causes error. -> Option B
      4. Quick Check:

        Positional args must precede named args [OK]
      Hint: Positional args must come before named args [OK]
      Common Mistakes:
      • Placing positional arguments after named arguments
      • Forgetting colon in named argument
      • Assuming named arguments can be mixed in any order
      5.

      Given the function below, which call correctly uses named arguments to skip the optional country parameter and specify city only?

      function locationInfo(string $city, string $country = "USA") {
          return "$city, $country";
      }
      hard
      A. locationInfo(city: "Boston");
      B. locationInfo("Boston", country: "Canada");
      C. locationInfo(city: "Boston", country: "Canada");
      D. locationInfo(country: "Canada", city: "Boston");

      Solution

      1. Step 1: Understand optional parameters and named arguments

        The country parameter has a default value, so it can be skipped.
      2. Step 2: Identify call that skips country and sets city

        locationInfo(city: "Boston"); calls locationInfo(city: "Boston"), skipping country and using default "USA".
      3. Final Answer:

        locationInfo(city: "Boston"); -> Option A
      4. Quick Check:

        Skip optional params by omitting them in named args [OK]
      Hint: Skip optional params by not naming them [OK]
      Common Mistakes:
      • Trying to skip required parameters
      • Providing positional argument after named argument
      • Specifying optional parameter unnecessarily
      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