>백엔드 개발 >PHP 튜토리얼 >使用表单传递关联数组的例子_PHP

使用表单传递关联数组的例子_PHP

WBOY
WBOY원래의
2016-06-01 12:38:151031검색

今天从

www.php.net的用户反馈处看到如下警告讲到通过表单传递的关联数组不能被

each
()函数读取我尝试了如下的操作没有发现问题结果完全正确。程序如下



//test1.php











//test2.php



$msg = each($var);

echo $msg[0],$msg[1],$msg['key'],$msg['value'];

?>



//output is

8eccbad8e776ephp20008eccbad8e776ephp2000



原文
- http://www.php.net/manual/ref.array.php



garbepat
@ifrance.com

08
-Jan-2001 09:52



Be careful
if you want to submit a variable as an associative array.



If for some reason you use indexes that begin with a number - for instance some dynamically

display ID number
:

input type="textfield" name="vars[8eccbad8e776e]">

It seems to be a rare
case but I needed to code that stuff.

The bug here comes from the fact the browser
"urlencodes" the name of the field.



The
array is actually transmitted but you can't use the "each()" function on It. However I can

swear you the array is not empty and - that'
s worse - the correct data is stored at the correct

index
(is knew It making 'echo $vars["8ecc..."]').



The less boring solution I found is to put an
"_" before any index.

Then you will surely find a way to remove it
- using "preg_replace" for instance.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.