PHP: Function signature

Function pow, that raises a number to a power, receives two paramters: a number to raise and a power to raise to. If we called pow without parameters, code execution would exit with an error PHP Warning: pow() expects exactly 2 parameters, 0 given in php shell code on line 1. This is the interpreter telling you that the function expects two parameters and you've passed it none.

Whoever created the pow function, designed it in the way that it requires two parameters, and it's impossible to call it with any other number of parameters.

Besides, only numbers can be acceptable parameters for the pow function. Passing it a string, for example, would cause the following error: PHP Warning: A non-numeric value encountered in php shell code on line 1. Result of this function must also be a number.

Some other function can have a different number and type of parameters. There could be a function that receives three parameters: a number, a string, and another number.

How do we know how many parameters the pow function needs and what type of result it will return? We've looked up the signature of this function. Signature defines the input values and their types and also output value and it's type. Let's look up the pow function in the PHP official documentation. You will find the following text in the "Description" section:

pow ( number $base , number $exp ) : number

Returns base raised to the power of exp.

It is the function signature and a short description of it.

Let's break it down:
- the function's name is pow
- the function receives two parameters: a number (base) and a number (exp)
- the function returns a number
- function returns base raised to the power of exp.

You can only pass parameters in exactly the same order as it is defined in the function signature.

Any function returns only one value. Such limitaion exists on the language level and can't be bypassed.


Now it's your turn to look up a function signature in documentation and find out how to use it.

PHP has a function named ucfirst. Study it's signature at the page

Write a program that uses the ucfirst function on the variable $text and print the result to screen.


  • Function signature - a formal description of types of arguments and return value of a function.

If you got stuck and don't know what to do, you can ask a question in our huge and friendly community