我试图调用一个函数并将数组和其他变量传递给它。这是我用来做的代码:
function fnGetElementsById($ArrCols, $tableName, $id) {
while($arrCols[$i])
{
if($i != 0)
{
$sql = $sql.',';
}
$sql = $sql.$arrCols[$i].' ';
$i++;
} }
while行是错误或通知行,当我用var_dump测试时,数组为空。
主叫代码:
$arrCols = array(
0=>'marque',
1=>'prix'
);
$CDB->fnGetElementsById($arrCols, 'Portables', $_POST['id1']);
谢谢
答案 0 :(得分:1)
在调用while循环之前,您尚未定义$i
。因此,你基本上是在尝试这个:
while($arrCols[null]) {
此外,您的参数为$ArrCols
,而while条件中的变量名称为$arrCols
(小写首字母)。
你需要解决这两个问题。
答案 1 :(得分:0)
您遇到了个案问题。
function fnGetElementsById($ArrCols, $tableName, $id) {
while($arrCols[$i])
应该是
function fnGetElementsById($arrCols, $tableName, $id) {
while($arrCols[$i])
注意从ArrCols
更改为arrCols
。
此外,您没有初始化$i
变量。
请在使用前将其设置为0
。