I understood there wasn't much, if any different between int and integer in PHP. I must be wrong.
I'm passing a integer value to a function which has int only on this value. Like so:-
$new->setPersonId((int)$newPersonId); // Have tried casting with (int) and intval and both
The other side I have:-
public function setPersonId(int $value) {
// foobar
}
Now, when I run - I get the message:-
"PHP Catchable fatal error: Argument 1 passed to setPersonId() must be an instance of int, integer given"
I have tried casting in the call with (int) and intval().
Any ideas?
Type hinting in PHP only works for objects and not scalars, so PHP is expecting you be passing an object of type "int".
You can use the following as a workaround
public function setPersonId($value) {
if (!is_int($value)) {
// Handle error
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With