A.php

define("_a_","hey!");


B.php

define("_a_","wow!");


index.php

function getFile($type) {
  include_once($type . ".php");
  echo _a_;
}


调用getFile

getFile(A); //--> Output "hey!"
getFile(B); //--> Output "hey!" HERE IS THE PROBLEM, SHOULD ECHO "wow!"


然后我交换了调用函数的顺序

getFile(B); //--> Output "wow!"
getFile(A); //--> Output "wow!" HERE IS THE PROBLEM, SHOULD ECHO "hey!"


感谢所有帮助

最佳答案

PHP official documentation

bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )



在运行时定义一个命名的CONSTANT


因此,如果它定义了不可更改的值,则意味着您无法在运行时更改该值。

编辑:
您可以使用变量从包含的文件中获取数据。包括脚本时,基本上是在创建新脚本,并从包含的文件中复制并粘贴内容,然后执行该新脚本。 Passing a variable from other script - PHP

关于php - 包含具有相同变量名的文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31147089/

10-13 06:01