Dan Trainor wrote:
> Mike Johnson wrote:
> 
>>From: Dan Trainor [mailto:[EMAIL PROTECTED] 
>>
>>
>>
>>>Hello, all -
>>>
>>>I've been looking around for a function that would tell me if a $value
>>>in a $key=>$value array was empty, and I could not find one.  So I
>>>decided to make my own.  Even if I am re-inventing the wheel, 
>>>I thought that the practice might be good for me.
>>>
>>>However, my function doesn't *quite* work, and I'm having a difficult
>>>time finding out why.  The code is as follows:
>>>
>>>function findMissingVals($workingArray) {
>>>     $newcount = count($workingArray);
>>>     for ($i = 0; $i <= $newcount; $i++) {
>>>             if (empty($workingArray['$i'])) {
>>>                     return 1;
>>>             }
>>>     }
>>>}
>>>
>>>So it takes in $workingArray as an array, runs a loop, checks $i, yada
>>>yada.  The thing is, that sometimes the function does not 
>>>return 1, even when it should.
>>>
>>>I was hoping some experienced eyes could take a gander at 
>>>this and give me some pointers.
>>
>>
>>PHP doesn't eval code in single-quotes, so what you want to do is
>>simply:
>>
>>if (empty($workingArray[$i])) {
>>      return 1;
>>}
>>
>>With the single-quotes, it's looking for the string $i as a key.
>>
>>HTH!
>>
> 
> 
> 
> Hey there, Mike -
> 
> Your tips were very helpful, thank you.  I saw my error, but I am still
> having problems.  Being somewhat novice to PHP, I think my error might
> very well just be in my implementation of the function, as follows:
> 
> function findMissingVals($workingArray) {
>       $newcount = count($workingArray);
>       for ($i = 0; $i <= $newcount; $i++) {
>               if (empty($workingArray[$i])) {
>                       return 1;
>               }
>       }
> }
>       
> if (findMissingVals($vars)) {
>       if (!$var1)     { ?> hi1 <? };
>       if (!$var2)     { ?> hi2 <? };
>       if (!$var3)     { ?> hi3 <? };
>       if (!$var4)     { ?> hi4 <? };
>       if (!$var5)     { ?> hi5 <? };
>       if (!$var6)     { ?> hi6 <? };
> } else {
>       echo "hi";      
> }
> 
> 
> I never see "hi", even if I have an array as $vars as such:
> 
> $vars = array("one","two","","four","five");
> 
> so I'm a bit confused.
> 
> If you wouldn't mind taking another few minutes here, I would greatly
> appreciate it.
> 
> Thanks!
> -dant
> 

Er, sorry about that -

I never see "hi" even if an array is set as such:

$vars = array("one","two","three","four","five");

but I do see "hi3" if I have an array set as such:

$vars = array("one","two","","four","five");

Thanks!
-dant

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to