Difference in accessing arrays in PHP 5.3 and 5.4 or some configuration mismatch?

Array dereferencing, which is what you are using, was introduced in PHP 5.4 and won't work in PHP 5.3.

So

$dbSettings = $sm->get( 'Config' )[ 'doctrine' ][ 'connection' ][ 'orm_default' ][ 'params' ];

Would need to be:

$dbSettings = $sm->get( 'Config' );
$params     = $dbSettings[ 'doctrine' ][ 'connection' ][ 'orm_default' ][ 'params' ];