Php foreach help?

I am not sure why this code ain’t working?

$list array;

    Array
    (
        [0] => Array
            (
                [entityid] => 100
                [address] => 21005 Huelva, Huelva, España
            )

        [1] => Array
            (
                [entityid] => 10914
                [address] => Huelva, Huelva, Spain
            )

        [2] => Array
            (
                [entityid] => 20
                [address] => Huelva, Huelva, España
            )

    )

     $list = $service->getLocationName();
            $tplList = array();
            foreach ( $list as $listItem )
            {
                $tplList[] = array(
                    "text" => $listItem->entityid,
                    "address" => $listItem->address,
                );
                
            }
            
            
            
            $this->assign("list", $tplList);

It returns thins:

    Array
    (
        [0] => Array
            (
                [text] => 
                [address] => 
            )

        [1] => Array
            (
                [text] => 
                [address] => 
            )

        [2] => Array
            (
                [text] => 
                [address] => 
            )

    )

Why it’s not working?

This part ain’t working not sure why?

    $tplList[] = array(
                        "text" => $listItem->entityid,
                        "address" => $listItem->address,
                    );

May I ask what $service->getLocationName(); returns? It appears you are redefining $list, assuming $list is that array at the beginning of the code.

Hi it returns this:

Array
(
    [0] => Array
        (
            [entityid] => 100
            [address] => 21005 Huelva, Huelva, España
        )

    [1] => Array
        (
            [entityid] => 10914
            [address] => Huelva, Huelva, Spain
        )

    [2] => Array
        (
            [entityid] => 20
            [address] => Huelva, Huelva, España
        )

)

Would it be

            $tplList[] = array(
                "text" => $listItem[entityid],
                "address" => $listItem[address],
1 Like

OMG you saved the day thanks big time works 100% +1

Yeah, I was just about to say that. The keys need to be strings though, so it would be
$tplList[] = array( "text" => $listItem["entityid"], "address" => $listItem["address"],
Object notation -> can only be used for STDclass objects like decoded JSON

1 Like

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.