为什么使用带数组的foreach的php函数不起作用?

时间:2018-01-19 09:54:48

标签: php fdf

我正在尝试使用PHP中的下面的函数编写FDF文件的fieldname / value行。第一个“嘿那里”打印,但没有其他。我刚刚开始使用PHP,感谢任何帮助。

function writeFDFTextboxLines($reportNameToFieldNumsArray, $reportName, $fileHandle, $value) {
    echo "hey there <br />";
    $valuesArray = $reportNameToFieldNumsArray[$reportName];
    foreach($valuesArray as $fieldNums) {
        echo "hey there <br />";
        foreach($fieldNums as $fieldNum) {
            echo "hey there <br />";
            if(strlen($fieldNum) > 0) {
                echo "hey there <br />";
                fwrite($filehandle, '<< /T (' . $reportName . "Textbox" . $reportNameToFieldNumsArray[$reportName] . ') /V /(' . $value . ')>>' . "\n");
            }
        }
    }
}

$ reportNameToFieldNumsArray示例是

$firstnameLastnameArray = array("report1" => array("1"), "report2" => array("1"), "report3" => array("1"), "report4" => array("1"), "report5" => array("1"), "report6" => array("1"), "report7" => array(), "report8" => array(), "report9" => array(), "report10" => array("1"), "report11" => array("1"), "report12" => array("1"), "report13" => array("1"), "report14" => array("1"), "report15" => array("1"), "report16" => array("6"), "report17" => array("1"),  "report18" => array("1"));

1 个答案:

答案 0 :(得分:0)

您的$valuesArray包含array("1"),因此您的第一个foreach循环数组。但$fieldNums不是数组。尝试var_dump($fieldNums),查看其中包含的内容。看起来你不需要嵌入foreach。