需要帮助在PHP中重构全局变量

问题描述 投票:2回答:1

我有一个配方脚本,其中包含一些用Global Variables编写的PHP代码。是否有人能够告诉我一个可以遵循的一般过程(或操作顺序)开始交换全局变量?这是一个例子:

function computeCost() {
  global $DB_LINK;
  $this->loadIngred();

  if ($this->liquid == $DB_LINK->true)
    $liquid = true;
  $amount = Units::convertTo($this->amount, $this->unitMapping, $this->unit, 
    $this->liquid);
  return ($this->amount * $this->cost);
}
php variables refactoring global
1个回答
7
投票

您可以将其传递给函数,而不是使用全局变量:

function computeCost($db_link) {

并调用这样的函数:

$returnValue = computeCost($DB_LINK);

这样,不需要Globals(这样更好),并将数据传递给函数。因此,该函数与外部没有依赖关系,因为它应该是。

© www.soinside.com 2019 - 2024. All rights reserved.