В PHP вы можете сделать следующее:
class Something {// bla bla} function functionName(Something $object) { // Do stuff here ^^^^^^^^^ }
Это гарантирует, что функция получила экземпляр класса Something.
Моя проблема заключается в том, что я хочу применить основной тип.
function functionName(integer $someInt) { // Do stuff here ^^^^^^^ } functionName(5);
Это говорит о том, что $ someInt является «не экземпляром целого числа, целочисленным». Как вы можете применить базовый тип?
Вы не можете сделать это для скалярных типов, см. Руководство:
И цитата оттуда:
Тип подсказки нельзя использовать со скалярными типами, такими как int или string . Ресурсы и черты также не допускаются.
Но вы сможете это сделать с помощью PHP 7: https://wiki.php.net/rfc/scalar_type_hints_v5
Вы не можете вводить типы скалярных типов в PHP. Единственный шанс – использовать тип обертки. Для этой цели библиотека SPL поставляется с SplInt
.
Обновление: похоже, что PHP 7 предлагает эту функцию. Вздох, времена изменились 🙂