【问题标题】:Invalid argument for foreach... to a global $var;全局 $var 的 foreach 参数无效;
【发布时间】:2015-10-18 02:53:39
【问题描述】:
$form[0]= '<!DOCTYPE HTML><html>
        <head><meta charset="utf-8"></head>
        <body>';
        $form[1]= '<div class="logo img-center"></div><div class="box-shadow fondo-blanco">';
        $form[2]= '<p class="mostrar caja texto-advertencia">Para acceder a este sitio debes iniciar sesión nuevamente.</p>';
        $form[3]= '<form method="post" action="" class="caja borde-transparente " style="margin: 14px auto;width:400px;max-width:100%;">';
        $form[4]='<span class="mostrar texto-advertencia p">
        <a href="javascript: window.history.go(-1)" class="i-cerrar float-right"></a>
        Clave o nombre de usuario incorrectos! <br> Debes iniciar sesión con una cuenta con acceso de administrador para ver este contenido.</span>';
        $form[5]='<span class="mostrar texto-advertencia p">Haz realizado demasiados intentos fallidos para iniciar la sesión. Intentá nuevamente en unos minutos.';
        $form[6]=    '<label class="borde-identidad texto-gris-oscuro caja-i caja con-separador m con-relieve-3"><span class="i-storekey"></span>Iniciar sesión:</label>
            <input class="input borde-gris" type="text" placeholder="Usuario" name="username" autofocus>
            <input class="input borde-gris" type="password" placeholder="Contraseña" name="password">';
        $form[7]=    '<div class="checkbox" style="font-size:16px">
                <input id="mycheckbox" type="checkbox" name="remember-me" value="1">
                <label for="mycheckbox" class="texto-gris-oscuro"> Mantener la sesión iniciada
                </label>
            </div>';
        $form[8]= '<input type="submit" value="Ingresar" class="btn btn-info">
          </form></body></html>';
if (!function_exists('echo_formulario')){
    function echo_formulario($rough=NULL){
    global $form;
    foreach ($form as $key=>$html):
        #some code here...
    endforeach;
    }
}

foreach 循环给出“无效参数”警告。不过昨天它在本地主机上工作了......

$form var 的调用方式是否存在问题?

【问题讨论】:

    标签: php foreach arguments global


    【解决方案1】:

    问题 1:$html 未在您的代码中定义。

    问题 2:你的 foreach 末尾有一个冒号 :

    问题 3:很多左括号 { 没有右括号

    先试试这个

    if (!function_exists('echo_formulario')){
        function echo_formulario($rough=NULL){
            global $form;
            foreach ($form as $key=>$html){
                echo $key;
            }
        }
    }
    

    如果这不起作用,请尝试改用 foreach ($form as $key)

    if (!function_exists('echo_formulario')){
        function echo_formulario($rough=NULL){
            global $form;
            foreach ($form as $key){
                echo $key;
            }
        }
    }
    

    希望它有效!

    【讨论】:

    • 嘿大卫,上面的帖子已更新,我裁剪了代码以避免使帖子太长。我尝试替换 ´foreach(): endforeach;´对于 ´foreach(){ }´ 并将语句更改为 ´foreach ($form as $key){´ )
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-08
    • 1970-01-01
    • 2015-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    相关资源
    最近更新 更多