Reply to Re: [PHP] Help with a home-grown function

Your name:

Reply:


Posted by Dan Trainor on 07/22/05 00:28

Chris W. Parker wrote:
> Dan Trainor <mailto:info@hostinthebox.net>
> on Thursday, July 21, 2005 2:03 PM said:
>
>
>>I never see "hi" even if an array is set as such:
>>
>>$vars = array("one","two","three","four","five");
>
>
> That's because your function always returns true. If it finds a missing
> value it returns true. If it doesn't find a missing value it returns
> true. Because of this the true code block is always executed.
>
> You should do this instead:
>
> function hasMissingVals($input)
> {
> // make sure we've been passed an array with values
> if(is_array($input) && (count($input) > 0))
> {
> foreach($input as $v)
> {
> if(empty($v))
> {
> return true;
> }
> }
> }
>
> return false;
> }
>
> This way your function will always return false unless it finds a
> missing value in which case it will return true.
>
> As you can see I changed the name slightly from 'findMissingVals()' to
> 'hasMissingVals()' since your function is not actually finding any
> missing values. Finding suggests that your function will return data
> based on the location of the missing value which it does not do.
>
>
>>if (findMissingVals($vars)) {
>> if (!$var1) { ?> hi1 <? };
>> if (!$var2) { ?> hi2 <? };
>> if (!$var3) { ?> hi3 <? };
>> if (!$var4) { ?> hi4 <? };
>> if (!$var5) { ?> hi5 <? };
>> if (!$var6) { ?> hi6 <? };
>>} else {
>> echo "hi";
>>}
>
>
> 1. Where are $var1, $var2, $var3, etc. coming from? I think you mean to
> write $var[1], $var[2], $var[3], etc.?
>
> 2. It will be a good idea to get out of the habit of breaking in and out
> of PHP like that. Instead just do: echo 'hi1';
>
> You'll have problems down the road with modifying the headers (cookies,
> redirects, content-type, etc.) if you break in and out.
>
>
> Hope this helps,
> Chris.
>

Hello, Chris -

I see what you're saying about always returning true. I really
understand now. I'd just like to take a minute to tell you thanks for
the help.

Thanks!
-dant

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация