Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将foreach循环与var_导出一起使用?_Php_Arrays_Drupal_Drupal 6 - Fatal编程技术网

Php 如何将foreach循环与var_导出一起使用?

Php 如何将foreach循环与var_导出一起使用?,php,arrays,drupal,drupal-6,Php,Arrays,Drupal,Drupal 6,我在Drupal中有一个带有一些复选框的表单,我需要获得这些复选框以将它们添加到数据库中。要获取复选框中的值,我使用var_export,它返回一个数组,指示是否选中了复选框。在变量中存储此数组后,我将执行以下操作: $checked = array(); if(is_array($data) { foreach($data as &$value) { if($value != 0) { //the checkbox was checked $checked[] = $v

我在Drupal中有一个带有一些复选框的表单,我需要获得这些复选框以将它们添加到数据库中。要获取复选框中的值,我使用var_export,它返回一个数组,指示是否选中了复选框。在变量中存储此数组后,我将执行以下操作:

$checked = array();
if(is_array($data) {
 foreach($data as &$value) {
   if($value != 0) { //the checkbox was checked
    $checked[] = $value;
 }
}

但是,当我打印出变量$checked时,其中没有存储任何内容。我做错了什么?

在Drupal中,通常的做法是:

$checked = array_filter($form_state['values']['name_of_checkboxes_element']);
假设您正在表单的提交/验证处理程序中运行此代码,那么这将为您提供一个包含在checkbox元素中选择的所有值的数组


我还应该提到,它有一个很棒的函数,名为
dpm()
,它以分层格式将任何变量的值打印到消息区域,您可以轻松浏览。

我明白了。谢谢你。我现在就下载模块。还有一个简单的问题:打印数组内容的最佳方式是什么?不管怎样,我刚刚发现了dpm()。无论如何谢谢你!