Php Array Reference Assignment Notebook

PHP array() Function

❮ PHP Array Reference

Example

Create an indexed array named $cars, assign three elements to it, and then print a text containing the array values:

<?php
$cars=array("Volvo","BMW","Toyota");
echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
?>

Run example »

Definition and Usage

The array() function is used to create an array.

In PHP, there are three types of arrays:

  • Indexed arrays - Arrays with numeric index
  • Associative arrays - Arrays with named keys
  • Multidimensional arrays - Arrays containing one or more arrays

Syntax

Syntax for indexed arrays:

array(value1,value2,value3,etc.);

Syntax for associative arrays: 

array(key=>value,key=>value,key=>value,etc.);


ParameterDescription
keySpecifies the key (numeric or string)
valueSpecifies the value


Technical Details

Return Value:Returns an array of the parameters
PHP Version:4+
Changelog:As of PHP 5.4, it is possible to use a short array syntax, which replaces array() with [].
E.g. $cars=["Volvo","BMW"]; instead of $cars=array("Volvo","BMW");

More Examples

Example 1

Create an associative array named $age:

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
echo "Peter is " . $age['Peter'] . " years old.";
?>

Run example »

Example 2

Loop through and print all the values of an indexed array:

<?php
$cars=array("Volvo","BMW","Toyota");
$arrlength=count($cars);

for($x=0;$x<$arrlength;$x++)
  {
  echo $cars[$x];
  echo "<br>";
  }
?>

Run example »

Example 3

Loop through and print all the values of an associative array:

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

foreach($age as $x=>$x_value)
  {
  echo "Key=" . $x . ", Value=" . $x_value;
  echo "<br>";
  }
?>

Run example »

Example 4

Create a multidimensional array:

<?php
// A two-dimensional array:
$cars=array
  (
  array("Volvo",100,96),
  array("BMW",60,59),
  array("Toyota",110,100)
  );
?>

Run example »

❮ PHP Array Reference

You can't assign something by reference unless you are referencing something that already exists. Equally, you can't copy something that doesn't exist.

So this code:

...neither copies or references - it just creates a new array fills it with values, because the values were specified literally.

However, this code:

...copies the values from , and into an array1. The variables used to initialise the array values still exist in their own right, and can be modified or destroyed without affecting the values in the array.

This code:

...creates an array of references to , and (notice the ). If, after running this code, I modify - let's say I give it a value of 4 - it will also modify the first value in the array. So when you use the array, will now contain .

See this section of the manual for more information of how reference work in PHP.


1Depending on the types and values of the variables used as the array members, the copy operation may not happen at the time of the assignment even when assigned by-value. Internally PHP uses copy-on-write in as many situations as possible for reasons of performance and memory efficiency. However, in terms of the behaviour in the context of your code, you can treat it as a simple copy.

0 thoughts on “Php Array Reference Assignment Notebook

Leave a Reply

Your email address will not be published. Required fields are marked *