-1

我处于一种情况。

我的 php 文件夹结构就像

UI
  user
    login.php
    logout.php
  jquery
    somejs

  css
    somecss
blah.php
blah.php

现在要导入任何 css、js 或任何 php 文件,我正在使用文件路径,例如

localhost/UI/user/index.php  // example  

现在我正在尝试在任何页面上定义一个全局变量,例如

 <?php
    $somevar = "localhost";
    GLOBAL $somevar;
    ?>   

这样我就可以导入任何css js

<?php echo $somevar ;?>/UI/user/index.php  // example  

问题:它仅在我将变量声明为 GLOBAL 的页面上工作

我想在每个页面上使用变量并且不想使用包含

是否有任何其他替代方法可以在 php 中为文件夹定义变量?

4

4 回答 4

0

您不使用global. 您只需在您的方法或函数体中使其可用,即使它是在它之外设置(或使用您的术语“声明”)。所以除非声明它,否则没有办法拥有变量。如果不运行 PHP 代码(简化,但在这里没关系),就没有办法做到这一点。并且代码不是无处可去的,因此需要include或需要require设置变量的所述代码。

您可以尝试使用php.ini'sauto_include_file来自动包含变量,但仍然需要使用 PHP 代码。

但是你通常做错了。将所有全局变量移动到类中,设置自动加载器并静态访问即。代码会干净得多。

于 2012-09-26T06:40:11.243 回答
0

好吧,我的经验表明 .. global 用于访问函数内部的变量,这些变量是在函数外部定义的。可以有许多不同的解决方案,我建议使用会话或 cookie。将数据存储在 session/cookies 中,并在需要的地方访问它。

于 2012-09-26T06:49:13.700 回答
0

您可以使用 PHP 定义的特殊 $GLOBALS 数组。$GLOBALS 数组是一个关联数组,全局变量的名称是键,该变量的内容是数组元素的值。注意 $GLOBALS 如何存在于任何范围内,这是因为 $GLOBALS 是一个超全局的

您可能不需要定义全局变量来将 css、js 或任何静态文件(即图像等)应用到您的应用程序。您可以使用相对路径来包含 js 和 css 文件。你可以参考这篇文章 来了解更多关于相对路径和绝对路径的信息。

于 2012-09-26T06:50:09.167 回答
0

您必须define()为此目的使用功能

config.php
<?php
define("host", "localhost");
?>  

现在在您想要访问HOST变量的任何地方都包含此页面。

你可以像这样访问这个变量echo host;

于 2012-09-26T06:56:52.803 回答