PHP autovivificación

Update: mi intención original para esta pregunta era determinar si PHP realmente tiene esta característica. Esto se ha perdido en el enfoque de las respuestas sobre el tema escalar. Por favor, vea esta nueva pregunta en su lugar: "¿PHP tiene autovivificación?" Esta pregunta se deja aquí como referencia.

Según Wikipedia, PHP no tiene autovivificación, pero este código funciona:

$test['a']['b'] = 1;
$test['a']['c'] = 1;
$test['b']['b'] = 1;
$test['b']['c'] = 1;

var_dump($test);

Salida

array
  'a' => 
    array
      'b' => int 1
      'c' => int 1
  'b' => 
    array
      'b' => int 1
      'c' => int 1

Encontré que este código también funciona:

$test['a'][4] = 1;
$test['b'][4]['f'] = 3;

Pero agregar esta línea genera una advertencia ("Advertencia: no se puede usar un valor escalar como una matriz")

$test['a'][4]['f'] = 3;

¿Que está pasando aqui? ¿Por qué falla cuando agrego el elemento asociativo después del índice? ¿Es esta 'verdadera' autovivificación similar a Perl, o alguna variación de la misma, u otra cosa?

Edit: oh, ahora veo el error con el escalar, ¡Uy! Estos funcionan como se esperaba:

$test['a'][4]['a'] = 1;
$test['a'][4]['b'] = 2;
$test['a'][5]['c'] = 3;
$test['a'][8]['d'] = 4;

Entonces, ¿php tiene autovivificación? Buscar en Google "autovivificación de php" no ofrece una respuesta canónica o un ejemplo de ello.

Respuestas a la pregunta(3)

Su respuesta a la pregunta