PHP函数全局与需求

时间:2012-03-18 14:14:39

标签: php function global require

我有一个基于另一个脚本中的变量运行的脚本。在脚本的顶部,我需要变量脚本。

我试图让我的脚本更容易编辑,所以我决定创建函数,因为我的很多脚本完全一样。在函数中,我需要提取变量脚本中设置的一些变量。我尝试使用require,它往往使脚本非常慢。我知道我可以设置PHP全局,但我在某处读到使用全局变量是一个坏主意?这是真的吗?

除了在函数中使用require或使用全局变量之外,还有更好的方法吗?

代码:

function test() 
{
    require('var.php');

    // function code
}

OR

require('var.php');

function test() 
{
    global $var_variable1, $var_variable2;

    // function code
}

2 个答案:

答案 0 :(得分:2)

实际上有第三种选择:

在文件 param.php

<?php
    $param = 1234;
?>

在文件 test.php

<?php

    require 'param.php';

    function foo( $bar )
    {
        var_dump( $bar );
    }

    foo( $param );

?>

但你应该明白,这是处理变量并将指令从一段代码传递到另一段代码的非常原始的方法。

当您完成学习PHP语言的基础知识后,您应该开始研究面向对象的编程方法。那将是成长的方式。

答案 1 :(得分:1)

当变量被修复时,使用常量是一个很好的解决方案。

使用所有常量创建一个PHP文件:

<?php
define("FOO",     "something");
define("FOO2",    "someotherthing");
?>

按照惯例使用大写常量名称。 在您的脚本文件中使用require_once()作为第一行,包含您定义所有常量的脚本文件。

对包含所有支持函数的脚本执行相同操作,并从脚本中对require_once文件执行相同操作。

如果可能的话,使用OOP和PHP。使用物体,你可以做很酷的事情。