Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 函数将不回显_Php_Function_Echo - Fatal编程技术网

Php 函数将不回显

Php 函数将不回显,php,function,echo,Php,Function,Echo,这就是函数 function UsernameFun($ULN) { if($ULN){ if(empty($ULN->Nickname)){ return $ULN->Username; } else { return $ULN->Nickname; } } } $ULN这是什么 if(isset($_SESSION['Username'])) { $LoggedIn = mysql_query("SE

这就是函数

function UsernameFun($ULN) {
if($ULN){
    if(empty($ULN->Nickname)){
        return $ULN->Username;
    } else {
        return $ULN->Nickname;
        }
    }
}
$ULN这是什么

if(isset($_SESSION['Username'])) {
$LoggedIn = mysql_query("SELECT * FROM Users WHERE Username='".$_SESSION['Username']."'"); 
$ULN = mysql_fetch_object($LoggedIn);
}
我要把这个交给echo

echo"Logged in as ".UsernameFun($ULN->Username);
如果你还需要知道什么,我很乐意告诉你,但到目前为止,我不知道你还需要知道什么

我的意思是,当我把

echo"Logged in as ".UsernameFun($ULN->Username);

只有“登录身份”会回显,用户名或昵称不会回显。

由于您只向函数
UsernameFun($ULN->Username)
发送
UsernameFun($ULN->Username)
,因此它是函数中唯一可用的值。所以它试图找到
$ULN->Username->Username
$ULN->Username->昵称
。尝试更改代码以仅发送对象
$ULN
-

echo "Logged in as ".UsernameFun($ULN);

看一看带有函数和函数参数的变量范围。这将有助于理解为什么作为函数参数传递的内容是函数中唯一可用的值

您的函数声明在哪里?您是否检查过您的查询是否返回任何内容。尝试使用mysql\u num\u row
mysql\u*
函数已被弃用,应替换为
mysqli\u*
函数。很抱歉,这是我尝试制作的第一个函数,我将如何使用mysqli而不是mysql?@Kolink请分享正确的推理或建议的编辑。我认为这与范围无关,更确切地说是通过了什么。基本上,除了第一句之外,我都同意。@Kolink谢谢你的澄清。我已经改写了我的答案。变量范围可能不是确切的问题,但是理解它可能有助于OP了解为什么只传递对象的一部分会阻止他们访问函数中对象的其余部分。