No hace falta mucha teoría, sencillamente esa es la sintaxis que define PHP para poder acceder a los índices de un array, de hecho en versiones recientes ya puedes declarar un array usando únicamente [] y nada más.
De hecho muchos lenguajes, o la mayoría de ellos, usan la misma notación para los arrays así que tampoco me desvelaría pensando en ello.