Hi Lester,

On Thu, Aug 11, 2016 at 5:07 AM, Lester Caine <les...@lsces.co.uk> wrote:
> People keep complaining that I do not contribute any proposals to
> improve PHP, which to some extent s correct. Except the one thing that I
> keep trying to get a handle on is tidying validating of the basic
> variables that are the heart of PHP.
>
> validate_var_array() is a case in point, since ALL it should do is
> handle an array of simple variables for which we can define REAL
> validation rules rather than just a very restricted 'type' rule.
> Massaging the way the content of a variable is presented is another part
> of the basic functions of handling a variable, and simply providing an
> escape option which can be set as part of the variable rules set
> eliminates the need for 'New operator (short tag) for context-dependent
> escaping' and similar tangential matters. If we have a set of rules
> wrapping a variable then everything else just follows on, and the SQL
> domain model allows a group of variables to take an identical se of rules.
>
> These are the sorts of things any decent user world library can and does
> provide, but if the clock was rolled back prior to all the trouble
> created by 'strict typing' and we started again with a more well defined
> simple variable I'm sure that much of the conflict could have been
> resolved by allowing full validation checks to control an error or
> exception depending on the 'style' of PHP a programmer prefers.
>
> If a function is going to return a variable and that variable has under
> the hood a set of validation rules, then one can return an error if the
> result is faulty. Or even allow a NULL return if a valid answer is not
> available ... if that is the style of programming one prefers.
> Exceptions handle unmanaged errors, while proper program flow handles
> managed ones!
>
> Wrap these intelligent variables inside a class and one can create more
> powerful objects but ones which still use all the basic functionality.
> Similarly an array of them can be asked to provide a simple 'yes/no' if
> all of the variables pass their validation check, or an array of
> elements which need processing.

It sounds you are looking for autoboxing (or at least something similar)

https://wiki.php.net/rfc/autoboxing

I like this proposal, BTW. I'm not sure performance impact, though.

Regards,

--
Yasuo Ohgaki
yohg...@ohgaki.net

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

Reply via email to