美奇科技 发表于 2017-4-9 10:18:58

PHP自定义函数不能用外部变量

  假设有头文件config.inc,里面存放了变量$dbaddr
  然后向封装一个数据库连接操作函数shy_connectdb()
  该函数要使用$addr变量
  本以为直接用require("config.inc")包含进来,函数里面就能用了,实验以后发现不行。
  

  后来发现global关键字可以在函数内应用外部变量
  

1 <?php23   require("config/config.inc");45   /*连接数据库*/6   function shy_connectdb()7   {8         global $SR_HOST, $SR_USER, $SR_PWD, $SR_DATABASE;910         echo "$SR_HOST, $SR_USER, $SR_PWD, $SR_DATABASE<br>";1112         $conn = mysql_pconnect($SR_HOST, $SR_USER, $SR_PWD);13         if(!$conn)14             die("连接数据库失败<br>");15         echo "打开连接成功<br>";1617         mysql_close($conn);18         echo "关闭连接<br>";192021   }22 ?>
页: [1]
查看完整版本: PHP自定义函数不能用外部变量