如何检查php数组的键是否都有值,没有空白或未设置

时间:2013-08-27 08:50:38

标签: php

我在php中动态创建一个php数组,然后是json_encoded并发送回请求它的ajax脚本。

$myarr['key_a'] = 'a';
$myarr['key_b'] = 'b';
$myarr['key_c'] = 'c';

在我执行json_encode之前,由于这个值来自数据库,我是否可以检查是否所有值都已设置且没有空白或未设置而无需单独检查每个密钥?

3 个答案:

答案 0 :(得分:15)

if (count($myarr) != count(array_filter($myarr))) {
    // Oops, empty values
}

答案 1 :(得分:2)

//$arr is your array contains values from database
$newArr = array();
foreach($arr as $key => $val) {
  if(trim($val) != ''){
    $newArr[$key] = $val;
  }
}
json_encode($newArr);

答案 2 :(得分:1)

如果你不想四处奔波并单独检查每个密钥(使用foreach),你应该确保在创建时已经检查了生成的数组。

添加if(empty($value)) { // Do stuff }可能会解决您的问题。