> Le 8 mai 2023 à 23:38, Larry Garfield <la...@garfieldtech.com> a écrit :
> 
> Ilija Tovilo and I would like to offer another RFC for your consideration.  
> It's been a while in coming, and we've evolved the design quite a bit just in 
> the last week so if you saw an earlier draft of it in the past few months, I 
> would encourage you to read it over again to make sure we're all on the same 
> page.  I'm actually pretty happy with where it ended up, even if it's not the 
> original design.  This approach eliminates several hard-to-implement edge 
> cases while still providing a lot of functionality in one package.
> 
> https://wiki.php.net/rfc/property-hooks
> 

Hi,

If I understand correctly, given:

<?php

class C {

    public int $someInt;

    public float $someFloat;
    
    public int $someIntWithHook {
        get => $field;
        set => $field = $value;
    }

    public float $someFloatWithHook {
        get => $field;
        set => $field = $value;
    }

}
?>

we have:

<?php
$obj = new C;
var_dump($obj->someInt = 42.0); // int(42)
var_dump($obj->someFloat = 42); // float(42)
?>

but:

<?php
$obj = new C;
var_dump($obj->someIntWithHook = 42.0); // float(42)
var_dump($obj->someFloatWithHook = 42); // int(42)
?>

If I am correct, it means that the “This also implies that adding a set hook to 
a property cannot change the result of the = operator” statement is a bit too 
optimistic.


—Claude

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php

Reply via email to