PHP函数不起作用,未定义的变量


Php function not working ,undefined variable

我收到一个php错误

未定义的变量$fname

 $fname="John";
 function getThis()
 { 
  $complete_name= $fname."Kerry";
echo $complete_name;}
    getThis();  

任何正确方向的帮助都非常感谢!谢谢

您有一个变量范围问题

在函数外部定义的变量具有全局作用域,它们不能在函数内部使用,如果要在函数中使用它们,则必须在变量名称之前编写 global 关键字。

 global $fname;

在您的情况下

我注意到变量$fname是在函数外部定义的,它有一个全局范围,如果你在函数内使用它,那么它会抛出错误。

试试这个

  $fname="John";
  function getThis()
 { global $fname;
  $complete_name= $fname."Kerry";
echo $complete_name;}
    getThis();  

来源

http://php.net/manual/en/language.variables.scope.php

尝试将$fname放在 getThis() 函数中,如下所示:

<?php
 function getThis() { 
 $fname="John";
 $complete_name= $fname."Kerry";
 echo $complete_name;
 }
 getThis();
?> 

使用这个:-

$fname="John";
    function getThis()
     { 
    global $fname;
    $complete_name= $fname."Kerry";
    echo $complete_name;
    }
    getThis();

欲了解更多信息,请单击此处

您可以将变量传递到函数中。

这样:

 $fname="John";
 function getThis($f_name)
 { 
   $complete_name= $f_name."Kerry";
   echo $complete_name;
 }
 getThis($fname); 

你不能在函数内部访问声明在外面的变量,你必须使用全局关键字来使用。

 $fname="John";
 function getThis()
 { 
global $fname;
$complete_name= $fname."Kerry";
echo $complete_name;}
    getThis(); 

您必须将$fname声明为全局。就是这样。。。