Re: Troubles from the newb again
| From: | Steve | Date: | Mon, 12 Mar 2007 13:55:03 +0000 |
| Subject: | Re: Troubles from the newb again | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-250302@lists.php.net to get a copy of this message | ||
The way I see it, you have two ways to avoid that error:
1) If you want to preserve indexes:
foreach ($array as $index => $name)
{
if ($name->currentHP >0)
{
$newarray[$index] = $name;
}
}
2) If you don't care about indexes at all
foreach ($array as $name)
{
if ($name->currentHP >0)
{
$newarray[] = $name;
}
}
Either way should make the error go away. The reason why it's coming up is
because it looks like the $name value is non-numeric. Storing this stuff in
arrays is perfectly acceptable, however using them as indexes is not.
""Jeff Taylor"" <jefftaylor@optusnet.com.au> wrote in message
news:05.86.00491.7D932F54@pb1.pair.com...
> Hey everyone,
> Newb back again - Im trying to populate my arrays, but getting this error
> again:
> Warning: Illegal offset type in
> c:\Inetpub\wwwroot\MyProjects\SecondOffering\myFuncs.php on line 242
>
> Code:
> $newarray = array();
> foreach ($array as $name)
> {
> if ($name->currentHP >0)
> {
> $newarray[$name];
> }
> }