Shorthand for arrays: is there a literal syntax like {} or []?

James picture James · Nov 24, 2010 · Viewed 62.8k times · Source

What is the shorthand for array notation in PHP?

I tried to use (doesn't work):

$list = {};

It will be perfect, if you give links on some information about other shorthands for PHP.

Answer

Alin Purcaru picture Alin Purcaru · Nov 24, 2010

Update:
As of PHP 5.4.0 a shortened syntax for declaring arrays has been introduced:

$list = [];

Previous Answer:

There isn't. Only $list = array(); But you can just start adding elements.

<?php
$list[] = 1;
$list['myKey'] = 2;
$list[42] = 3;

It's perfectly OK as far as PHP is concerned. You won't even get a E_NOTICE for undefined variables.

E_NOTICE level error is issued in case of working with uninitialized variables, however not in the case of appending elements to the uninitialized array.

As for shorthand methods, there are lots scattered all over. If you want to find them just read The Manual.

Some examples, just for your amusement:

  1. $arr[] shorthand for array_push.
  2. The foreach construct
  3. echo $string1, $string2, $string3;
  4. Array concatenation with +
  5. The existence of elseif
  6. Variable embedding in strings, $name = 'Jack'; echo "Hello $name";