【问题标题】:Undefined variable '$result'.intelephense(1008)未定义变量 \'$result\'.intelephense(1008)
【发布时间】:2023-01-29 11:17:30
【问题描述】:

我按照一个视频在我的网站上用 php 创建一个登录页面,一切都很酷,直到我的一个 php 文件无法完成工作,因为 $result 没有定义,这是错误:未定义的变量 '$result'.intelephense (1008)

我尝试了 var $result、$result = 0、$result = true 或 $result = false 但没有任何效果,我给你一些代码,如果你能帮助我,那就太棒了! :)

<?php

function emptyInputSignup($name, $email, $username, $pwd, $pwdrepeat) {
    $result;
    if (empty($name) || empty($email) || empty($username) || empty($pwd) || empty($pwdrepeat) ) {
        $result = true ;
    }
    else {
        $result = false;
    }
    return $result;
}

function invalidUid($username) {
    $result;
    if (!preg_match("/^[a-zA-Z0-9]*$/", $username)) {
        $result = true ;
    } 
    else {
        $result = false;
    }
    return $result;
}

【问题讨论】:

    标签: php function variables error-handling var


    【解决方案1】:
    function emptyInputSignup($name, $email, $username, $pwd, $pwdrepeat) {
        $result;
    

    <-- 目前 $result 未定义,预计会出现错误(也在下面的“invalidUid()”中)。

    这条线是什么 $result; 为了?没用的,不是吗?

    【讨论】:

    • 视频中的人写这个是为了在函数中声明 var,这样 ze 就可以多次使用:/
    • OK,但是:1.$result = '';$result = FALSE;等是变量的声明,但是2.$result;(*)或echo $result;print_r($result);等是变量的使用,不是声明; * = 此外,这一个经常可能被错误使用。
    • 好的,所以如果我理解的话,我要求 $result 的结果而不是声明它,所以我的代码不起作用。我如何声明它才能使我的代码工作? :)
    • 删除$result;这两行并尝试...
    • 顺便说一句,考虑下面的代码(preg_match 等方面的差异)var_dump(invalidUid('johny')); var_dump(invalidUid('')); /* FALSE - not OK */ function invalidUid_($username) { $result = true; if (preg_match("/^[a-zA-Z0-9]+$/", $username)) { $result = false ; } return $result; } var_dump(invalidUid_('')); /* TRUE - OK */ <3v4l.org/gV0gn#v7.4.27>
    猜你喜欢
    • 2022-12-12
    • 2022-11-12
    • 2020-08-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-15
    • 2011-06-11
    • 2020-09-27
    • 1970-01-01
    相关资源
    最近更新 更多