函数中的PHP变量

函数中的PHP变量,php,variables,Php,Variables,我还没有找到一个很好的例子来说明这一特殊情况。大多数问这个问题的人都有一个更复杂的用例,因此答案通常涉及一个复杂的解决方案。我只是在脚本的开头有几个变量,这些变量需要在所有代码中都可用,包括几个函数。否则,我必须在每个函数中设置它,考虑到这是一个用户设置的值,在整个代码中更改它是不可能的 <?php //**** Example User Config Area **** $name = "blah"; $tag = "blah"; //*************************

我还没有找到一个很好的例子来说明这一特殊情况。大多数问这个问题的人都有一个更复杂的用例,因此答案通常涉及一个复杂的解决方案。我只是在脚本的开头有几个变量,这些变量需要在所有代码中都可用,包括几个函数。否则,我必须在每个函数中设置它,考虑到这是一个用户设置的值,在整个代码中更改它是不可能的

<?php
//**** Example User Config Area **** 
$name = "blah";
$tag = "blah";
//**********************************

function taco() {
    echo $name; //this function needs to use these user set variables
    echo $tag;
}
?>

每个人都说不要使用全局变量。在这种情况下,全局变量确实有意义吗?如果没有,我应该在这里做些什么来实现这一目标


应该注意的是,这些值在程序中不会改变。只有在用户编辑它们时,它们才会更改。例如数据库位置或用户名等。

只需传递以下变量:

function taco($name, $tag) {
    echo $name;
    echo $tag;
}
// and
taco($name, $tag);

只需传递这些变量:

function taco($name, $tag) {
    echo $name;
    echo $tag;
}
// and
taco($name, $tag);

在PHP中进行配置有两种主要方法

第一个是创建一个配置对象,您可以将其传递给每个函数。有些人认为这有点笨拙,但它确实使用全局变量。 也就是说,如果您只是试图存储配置详细信息,那么这个站点上已经讨论过全局变量


您需要考虑您的用例。如果你正在处理一些可能造成竞争条件的事情,那么全局变量当然是个坏主意。如果您只想在整个代码中存储一些静态信息以供参考。。。这不是世界末日。

在PHP中进行配置有两种主要方法

第一个是创建一个配置对象,您可以将其传递给每个函数。有些人认为这有点笨拙,但它确实使用全局变量。 也就是说,如果您只是试图存储配置详细信息,那么这个站点上已经讨论过全局变量


您需要考虑您的用例。如果你正在处理一些可能造成竞争条件的事情,那么全局变量当然是个坏主意。如果您只想在整个代码中存储一些静态信息以供参考。。。这还不是世界末日。

在类、全局或会话中,有许多EAY可以声明变量作为公共变量。如果您在类中定义变量,那么这应该是一个很好的选择,而且safewell有许多EAY可以声明变量作为类、全局或会话中的公共变量,或者会话,如果你在类中定义变量应该是一个很好的选择,而且安全啊,我想我现在理解了这个问题!我不是把变量传递给函数,而是在函数中定义它们。啊,我想我现在明白了问题所在!我没有将变量传递给函数,只是在函数中定义它们。我喜欢通过使用singleton配置对象来组合这两个选项。这样,您可以在需要时插入config对象,或者在不需要时返回到全局命名空间以获取它。我喜欢通过使用单例配置对象来组合这两个选项。这样,您可以在需要时插入config对象,或者在不需要时返回到全局命名空间以获取它。