【发布时间】:2011-07-11 06:43:55
【问题描述】:
我得到这样的数组数据:
$tags = $_GET['item']['tags'];
if ($tags){
foreach ($tags as $tag){
由于标签数据是从输入字段发送的,该字段也可以为空。因此,如果$tags 没有得到任何数据,我会收到以下通知:
Message: Undefined index: item
如何避免此通知?
如果我试试这个:
$tags = isset($_GET['item']['tags']);
如果$tags 没有得到任何数据,它不会显示任何警告,但如果它得到任何数据,那么我会收到以下警告:
Message: Invalid argument supplied for foreach()
我该怎么做才能让$tags得到任何数据然后转到foreach循环,否则不要发出任何通知它没有得到任何数据。
谢谢。
【问题讨论】:
-
var_dump($tags)在它获取任何数据时会给你什么?Array(...)或String "..."? -
var_dump 返回数组:
array(3) { [0]=> string(3) "abc" [1]=> string(3) "def" [2]=> string(3) "ghi" } -
啊...
$tags = isset(...)表示$tags变为true或false,您无法将其传递给foreach。 Eddie 的回答回答了您需要做的事情。