Jump to content

_get in foreach condition


Go to solution Solved by requinix,

Recommended Posts

im trying to use a $_GET variable working in the foreach condition but no matter what I try it always comes back as "invalid argument" or "unexpected $variable".

 

I tried to build a string then put it it but get the same results

$data$test

$output$data$test

 

I spent a few hours on google this but I cant find anything that has a anything but the variable for the array in the source

//$output is a json array

// works as I want it to
foreach ($output['data']['502438129'] as $item)
   {
      echo $item['mark'] . '</br>';
    }

// I get Invalid argument supplied for foreach()

$test = $_GET["account_id"];
foreach ($output['data'].$test as $item)
   {
      echo $item['mark'] . '</br>';
    }


Link to comment
https://forums.phpfreaks.com/topic/298206-_get-in-foreach-condition/
Share on other sites

  • Solution

Compare the two:

$output['data']['502438129']
$output['data'].$test
They don't look similar, right? You'd expect them to look similar, right?

 

If $test has the value '502438129' then simply replacing the string with the variable leads you to

$output['data'][$test]
This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.