Re: empty() and method return values
| From: | Tanel Tammik | Date: | Mon, 07 Jun 2010 20:07:42 +0000 |
| Subject: | Re: empty() and method return values | ||
| References: | 1 2 3 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-305920@lists.php.net to get a copy of this message | ||
"Peter Lind" <peter.e.lind@gmail.com> wrote in message
news:AANLkTinmvaqv-hdgJlQ_dwOQUvoJBBMBfRiXNxvqK-mG@mail.gmail.com...
On 7 June 2010 21:52, Ashley Sheridan <ash@ashleysheridan.co.uk> wrote:
> On Mon, 2010-06-07 at 22:40 +0300, Tanel Tammik wrote:
>
>> Hi,
>>
>> empty() cannot check the return value of the method or function. which
>> would
>> be the best workaround?
>>
>> empty($class->method()) // gets an error
>>
>> i could do
>>
>> $method_return_value = $class->method() and then run empty() on
>> $method_return_value or is there an better option? i would like to do it
>> in
>> if statement....
>>
>> i wrote an class for handling file uploads and there is an method
>> getErrors() which returns empty array in case of 0 errors and i need to
>> check it before i move any files. i'm just curious, what is the right way
>> to
>> do that!
>>
>> Br
>> Tanel
>>
>>
>>
>
>
> Are you sure this is what is giving you the error, as people are using
> this fine in their examples on the manual page for empty()
>
Empty only works on variables, not return values from functions.
If you're checking the return value from a function, just do if
($class->method()). The return value will be cast to bool - look here
for the conversions:
http://dk2.php.net/manual/en/language.types.boolean.php
Regards
Peter
--
<hype>
WWW: http://plphp.dk / http://plind.dk
LinkedIn: http://www.linkedin.com/in/plind
BeWelcome/Couchsurfing: Fake51
Twitter: http://twitter.com/kafe15
</hype>
Thanks! It works...
<?php
class TestClass {
protected $errors = array();
function getErrors() {
return $this->errors;
}
}
$class = new TestClass;
if($class->getErrors()) {
echo 'there is an value!';
} else {
echo 'empty';
}
?>
No need to complicate things.
Br
Tanel