为 foreach() php [] 提供的参数无效
Invalid argument supplied for foreach() php []
我在 UI 的一部分有这个 var property
,我做
var property = JSON.stringify(valueToPush1);
它打印 []
所以我知道它是空的我仍然通过 ajax 在我的 php 中将该值发送到 php 我做
$property = ($_POST['property']);
$jsonproperty = json_decode(stripslashes($property), true);
我仍然会检查 属性 是否为空所以我会
print_r($jsonproperty);
并且 ajax 响应如预期的那样是空的 []
所以我所做的是避免 Invalid argument supplied for foreach()
我检查变量是否为空如果为空我将不会继续。我做如下检查。
if (!empty($jsonproperty)) {
foreach($jsonproperty as $value) {}
}
但我仍然得到 Invalid argument supplied for foreach() in
行 foreach($jsonproperty as $value) {}
- 如何检查 php 中的变量是否为空,尤其是当
print_r
为 []
时
您调用了 JSON.stringify
两次:一次是分配给 property
,一次是将 property
附加到 FormaData
参数。因为你只在 PHP 中解码一次,你得到的是字符串,而不是数组。
将它放入 formData
时只需调用 JSON.stringify
一次。
我在 UI 的一部分有这个 var property
,我做
var property = JSON.stringify(valueToPush1);
它打印 []
所以我知道它是空的我仍然通过 ajax 在我的 php 中将该值发送到 php 我做
$property = ($_POST['property']);
$jsonproperty = json_decode(stripslashes($property), true);
我仍然会检查 属性 是否为空所以我会
print_r($jsonproperty);
并且 ajax 响应如预期的那样是空的 []
所以我所做的是避免 Invalid argument supplied for foreach()
我检查变量是否为空如果为空我将不会继续。我做如下检查。
if (!empty($jsonproperty)) {
foreach($jsonproperty as $value) {}
}
但我仍然得到 Invalid argument supplied for foreach() in
行 foreach($jsonproperty as $value) {}
- 如何检查 php 中的变量是否为空,尤其是当
print_r
为[]
时
您调用了 JSON.stringify
两次:一次是分配给 property
,一次是将 property
附加到 FormaData
参数。因为你只在 PHP 中解码一次,你得到的是字符串,而不是数组。
将它放入 formData
时只需调用 JSON.stringify
一次。