zoukankan      html  css  js  c++  java
  • php数据库配置文件一般做法

    将数据库用户名密码等信息写到配置文件config.php里,在在需要引用配置文件内容的文件里用include或require包含进来,并在函数里用global关键字将存放数据库名,密码等的变量全局化,这样就可以在文件里的函数里使用了。

        

    config.php文件:

    <?php 
    $db_name="test";
    $db_username="root";
    global $db_password;
    ?>

    数据库操作类(调用配置文件)db.fun.php:

    <?php 
    require("config/config.php");
    class db{
    function fun(){
    global $db_username,$db_password;
    echo "数据库用户名:".$db_username."<br />";
    echo "数据库密码:".$db_password."<br />";
    }
    }
    ?>

    应用文件test.php:

    <?php 
    require("include/db.fun.php");
    $a= new db();
    $a->fun();
    ?>

    global关键字:

    <?php
    $a 
    = 1; 
    /* global scope */

    function Test
    ()
    {
        echo 
    $a; 
    /* reference to local scope variable */
    }

    Test
    ();
    ?>

    这个脚本不会有任何输出,因为 echo 语句引用了一个局部版本的变量 $a,而且在这个范围内,它并没有被赋值。你可能注意到 PHP 的全局变量和 C 语言有一点点不同,在 C 语言中,全局变量在函数中自动生效,除非被局部变量覆盖。这可能引起一些问题,有些人可能漫不经心的改变一个全局变量。PHP 中全局变量在函数中使用时必须申明为全局。

    <?php
    $a 
    = 1
    ;
    $b = 2
    ;

    function 
    Sum
    ()
    {
        global 
    $a, $b
    ;

        
    $b = $a + $b
    ;
    }

    Sum
    ();
    echo 
    $b
    ;
    ?>

    以上脚本的输出将是“3”。在函数中申明了全局变量 $a  $b,任何变量的所有引用变量都会指向到全局变量。对于一个函数能够申明的全局变量的最大个数,PHP 没有限制。

  • 相关阅读:
    php安全编程&python测试实例编写
    MySQL注入技巧性研究
    第一届“百度杯”信息安全攻防总决赛
    不想在315“中奖”?你得躲过这些坑!
    这些故事你尽管听,不奇葩算我输!
    str2-045漏洞事件,你想要的这里都有
    python多线程在渗透测试中的应用
    【ZCTF】easy reverse 详解
    UVA
    用Thinphp发送电子邮件的方法
  • 原文地址:https://www.cnblogs.com/zhwl/p/2579303.html
Copyright © 2011-2022 走看看