PHP - 我有两个功能一起工作,但现在给了我一个错误,在它之前没有

时间:2017-05-10 11:12:21

标签: php

现在他们已经不再工作了,但在他们之前

function perm1($conn)
{
$stmt = odbc_prepare($conn, 'SELECT * FROM nivel_acesso');
$success = odbc_execute($stmt);
echo "erro 1";
echo '<ul class="perm">';
echo "erro 2";
while($myRow = odbc_fetch_array($stmt))
{
echo "erro 3";
    $rows = $myRow;
    echo '<li>';
    echo "erro 4";
    echo'<input type="checkbox" name="perm'.$rows["nivel"].'" value="'.$rows["nivel"].'"><label for="perm'.$rows["nivel"].'">'.mb_convert_encoding($rows["descricao"], 'utf8', 'latin1').'</label>';
    echo '</li>';
    echo "erro 5";
}
echo "erro 6";
echo '</ul>';
echo "erro 7";
if(empty($rows))
{
    echo "erro 8";
    return $nada = "macacos";
    echo "erro 9";
}

echo "erro 10";
return $rows;
}

我的功能是显示一组带有我的数据库权限列表的复选框,查询很好并且连接到。

function utf8_converter($array){
array_walk_recursive($array, function(&$item, $key){
    if(!mb_detect_encoding($item, 'utf-8', true)){
        $item = utf8_encode($item);
    }
});
return $array;
}

这是我用来获取数据库输入的utf-8的函数。

当我使用类似utf8_converter(perm1($conn))的内容时,它会给我这个错误:

警告:array_walk_recursive()要求参数1为数组,字符串在[此处文件的目录+文件名] .php 第35行

第35行是:

function utf8_converter($array){
array_walk_recursive($array, function(&$item, $key){
    if(!mb_detect_encoding($item, 'utf-8', true)){
        $item = utf8_encode($item);
    }
});<--This one here
return $array;
}

0 个答案:

没有答案