Как заставить аргументы быть целыми / строковыми

я бы хотел, чтобы мои функции ожидали строки / целые числа или выдавали соответствие, например:

предупреждение: preg_match () ожидает, что параметр 2 будет строкой

Однако для этой функции

public function setImage($target, $source_path, integer $width, integer $height){...

я получаю:

Аргумент 4, переданный в My_Helper_Image :: setImage (), должен быть экземпляром целого числа, заданного целого числа

Но:

function(array $expectsArray)

работает так, как я ожидал, как я могу добиться того же эффекта, что и с целыми числами и строками?

Большое обновление

PHP 7 теперь поддерживает подсказку скалярного типа

function increment(int $number) {
     return $number++;
}

21
задан hakre 22 April 2018 в 18:46
поделиться