Re: Associative array key as a variable
| From: | Andrey Hristov | Date: | Sat, 23 Feb 2002 17:36:45 +0000 |
| Subject: | Re: Associative array key as a variable | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-85945@lists.php.net to get a copy of this message | ||
Use global. Read the docs about variable scoping.
If you use php >=4.1.0 then use $_POST, $_GET,... they not need to use global. Global scope.
<?
function show($name)
{ global $HTTP_POST_VARS;
$cnt = count($HTTP_POST_VARS[$name]);
echo "Count for $name is $cnt";
echo "<br />";
}
show("countries");
show("cities");
?>
Regards,
Andrey Hristov
----- Original Message -----
From: <ejfs@sympatico.ca>
To: <php-general@lists.php.net>
Sent: Saturday, February 23, 2002 7:31 PM
Subject: [PHP] Associative array key as a variable
> Hi.
>
> I have the following PHP program executed from an HTML form where I pass
> the associative array key name as a variable:
>
> <?
> function show($name)
> {
> $cnt = count($HTTP_POST_VARS[$name]);
> echo "Count for $name is $cnt";
> echo "<br />";
> }
> show("countries");
> show("cities");
> ?>
>
> The result is always 0. The form fields do have name=countries[] and
> name=cities[] to indicate an array.
> When I hardcode the count line in the function as follows just to test
> to make sure the transfer from the browser works, it displays a correct
> non-zero result:
>
> $cnt = count($HTTP_POST_VARS["cities"]);
>
> I even tried these statements in the function but all give a 0 result:
>
> $cnt = count($HTTP_POST_VARS["".$name.""]);
>
> How do I get the count line to work with a variable in the function?
> Thanks,
>
> Eurico
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>