Для чего служат подобные вызовы и что конкретно в них проиходит?Это не вызовы, а тайпхинты - подсказки типов для интерпретатора. Нужны они только для того, чтобы в рантайме выбросилось исключение, если в функцию был передан аргумент некорректного типа.
'head = "zagolovok"'. Числа можно не окавычивать, а вот строки обязательно.
composer create-project studio451/studio451cms --stability=dev cms.loc

Имена свойств могут быть строками. Это значит, что нестроковые объекты могут быть использованы как ключи в объекте. Любой нестроковой объект, включая числа, приводится к строке через метод toString.
...
Также выводит "value", поскольку foo и bar конвертируются в строку. В SpiderMonkey JavaScript движке эта строка будет "['object Object']".
2-й Сильно сокращает кол-во символов в файле, но не известно, на сколько быстрВо-первых, если используется gzip, то разница в размере с первым вариантом незначительная. Во-вторых, сделайте бенчмарк и узнаете (спойлер алерт - это экономия на спичках).
Database Connectionhttps://laravel.com/docs/5.7/eloquent
By default, all Eloquent models will use the default database connection configured for your application. If you would like to specify a different connection for the model, use the $connection property
Using Multiple Database Connectionshttps://laravel.com/docs/5.7/database#using-multip...
When using multiple connections, you may access each connection via the connection method on the DB facade. The name passed to the connection method should correspond to one of the connections listed in your config/database.php configuration file
If you only need the functionality of a custom rule once throughout your application, you may use a Closure instead of a rule object.
obj.each(function(prop, val) { <-- val
alert( prop ); // name -> age
});