Generally, a function is created with the following syntax:
function function_name($parameters) {
  // function body
- Data from the function parameters can be of different types: number, string, array, or even object. To check the parameters data type, you can use PHP specific functions, like: is_string(), is_array(), is_object(), etc.

There is also another option for objects and arrays, by specifying in the same declaration the parameter and the allowed data type.
function function_name(ClassName $parameter) {
  // function body
Or, for array:
function function_name(array $parameter, array $parameter2) {
  // function body
- These formulas verify and ensure that the $parameter data to be an object instance of a certain class, specified in ClassName, or, at the other syntax, an Array.

  - Example:
In the next example we set a class, named AClas, a function ( fObj() ) which only accepts an argument that is an object instance of the AClas, and another function ( fArr() ) with two parameters, the first argument must be an array.
// Define AClas class
class AClas {
  public function aMet() {
    return 'Method of the AClas class';

// this function accepts only an argument that is an object instance of the AClas
function fObj(AClas $objPar) {
  echo $objPar->aMet(). '<br />';       // calls the aMet() method

// the first argument passed to this function must be an Array
function fArr(array $arrPar1, $par2) {
  echo '<br />'. $par2;

// object instance of the AClas
$obj = new AClas();
fObj($obj);        // calls the fObj() with $obj argument

$aray = array('php', 'mysql', 'javascript');
$str = '';

fArr($aray, $str);         // calls the fArr() function
As you can notice, the special defined parameters can be used togheter with normal parameter ( fArr(array $arrPar1, $par2) )
The code above will output:
Method of the AClas class
Array ( [0] => php [1] => mysql [2] => javascript )
If one of the fObj() or fArr functions is not called with the data type required in its definition, will cause an error. For example, if you call the fArr() function, and the first argument isn't an array (i.g   fArr(8, $str); ), the script will return an error like this:
Catchable fatal error: Argument 1 passed to fArr() must be an array, integer given, called in ...

Class methods with object and array arguments

If your class has methods which use object or array arguments, you can specify in the method definition the type of the allowed arguments.
  - Example:
In the following example we define two classes (AClas and BClas). The BClas has two methods: bObj() is defined to accepts for its argument only instance of the AClas, and bArr() only accepts data type Array.
// Define AClas class
class AClas {
  public function aMet() {
    return 'Method of the AClas class';

// Define BClas class
class BClas {
  // only uses object instance of AClas
  public function bObj(AClas $obj_par) {
    return $obj_par->aMet();        // cxalls the meethod aMet() of the AClas

  // only accepts an array argument
  public function bArr(array $arr_par) {

// object instance of the AClas
$objAC = new AClas();

// object instance of the BClas
$objBC = new BClas();

// calls the methods of the BClas, with the correct arguments (AClas instance for bObj(), and an array for bArr() )
echo $objBC->bObj($objAC). '<br />';
echo $objBC->bArr( array('courses', 'tutorials') );
This code will output:
Method of the AClas class
Array ( [0] => courses [1] => tutorials )

Daily Test with Code Example

Which meta tag provides a short description of the page?
<meta content="..."> <meta description="..."> <meta http-equiv="...">
<meta name="description" content="70-160 characters that describes the content of the page" />
Which CSS property is used to stop the wrapping effect of the "float"?
clear text-align position
#some_id {
  clear: both;
Click on the method which gets an array with all the elements in the document that have a specified tag name.
getElementsByName() getElementById() getElementsByTagName()
var divs = document.getElementsByTagName("div");
var nr_divs = divs.length;
Indicate the PHP function which returns the number of elements in array.
is_[) count() strlen()
$arr =[7, 8, "abc", 10);
$nri = count($arr);
echo $nri;        // 4
Functions with Object and Array arguments

Last accessed pages

  1. PHP OOP - Interfaces (2511)
  2. AJAX Course, free Lessons (7047)
  3. Convert XML to JSON in PHP (7893)
  4. PHP PDO - Select query, fetch (20327)
  5. Working with MySQL Database (305)

Popular pages this month

  1. Read Excel file data in PHP - PhpExcelReader (373)
  2. PhpSpreadsheet - Read, Write Excel and LibreOffice Calc files (302)
  3. Register and show online users and visitors (273)
  4. Courses Web: PHP-MySQL JavaScript Ajax HTML CSS Flash-AS3 (266)
  5. Insert, Select and Update NULL value in MySQL (172)