Is it possible to have a value in
$_GET as an array?
If I am trying to send a link with
http://link/foo.php?id=1&id=2&id=3, and I want to use
$_GET['id'] on the php side, how can that value be an array? Because right now
echo $_GET['id'] is returning
3. Its the last id which is in the header link. Any suggestions?
The usual way to do this in PHP is to put
id in your URL instead of just
$_GET['id'] will be an array of those values. It's not especially pretty, but it works out of the box.
You could make
id a series of comma-seperated values, like this:
Then, within your PHP code, explode it into an array:
$values = explode(",", $_GET["id"]); print count($values) . " values passed.";
This will maintain brevity. The other (more commonly used with $_POST) method is to use array-style square-brackets:
But that clearly would be much more verbose.