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

假设有头文件config.inc,里面存放了变量 d b a d d r 然 后 向 封 装 一 个 数 据 库 连 接 操 作 函 数 s h y c o n n e c t d b ( ) 该 函 数 要 使 用 dbaddr 然后向封装一个数据库连接操作函数shy_connectdb() 该函数要使用 dbaddrshyconnectdb()使addr变量
本以为直接用require(“config.inc”)包含进来,函数里面就能用了,实验以后发现不行。

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

[php] view plain copy


1 <?php  
2  
3     require("config/config.inc");  
4  
5     /*连接数据库*/  
6     function shy_connectdb()  
7     {  
8         global $SR_HOST, $SR_USER, $SR_PWD, $SR_DATABASE;  
9  
10         echo "$SR_HOST, $SR_USER, $SR_PWD, $SR_DATABASE<br>";  
11  
12         $conn = mysql_pconnect($SR_HOST, $SR_USER, $SR_PWD);  
13         if(!$conn)  
14             die("连接数据库失败<br>");  
15         echo "打开连接成功<br>";  
16  
17         mysql_close($conn);  
18         echo "关闭连接<br>";  
19  
20  
21     }  
22 ?>  

http://blog.csdn.net/shyandsy/article/details/6992426

 function PRIVATE_LIST($id) {
            echo $id;
                  echo  "SELECT `id`,`name` ,`number` FROM  `tntec_common_wenzhangfenlei` WHERE  `congshu_id` = ".$id." ORDER BY `number` ASC;";
          
          
          
          global $mysql;  
          $tmp1 = $mysql -> query("SELECT `id`,`name` ,`number` FROM  `tntec_common_wenzhangfenlei` WHERE  `congshu_id` = ".$id." ORDER BY `number` ASC;");
          
          
          
          
          echo $tmp1[0]['id'];
/*          for($i=0;$tmp[$i]['id']!='';$i++)//正常循环
            {
                $str .= "<li>" . $tmp['id'] . "--" . $tmp['name'] . "</li>"; //构建字符串 
            //PRIVATE_LIST($tmp['id']); //调用get_str(),将记录集中的id参数传入函数中,继续查询下级 
                 
            }
*/    $str .= '</ul>'; 
    return $str;
    }

PHP自定义函数不能调用外部变量——mysql ->
mysql不能调用
交叉调用外部文件的类
public

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值