【问题标题】:How to read complex variables?如何读取复杂变量?
【发布时间】:2014-02-28 07:00:16
【问题描述】:
<?php
class config {
    public static function get($path = null) {
        if ($path) {
            $config = $GLOBALS['config'];
            $path = explode('/', $path);

            foreach($path as $bit) {
                if (isset($config[$bit])) {
                    $config = $config[$bit];
                }
            }

            return $config;
        }
        return false;
    }
}

?>

我正在关注来自 phpacademy 的本教程 http://www.youtube.com/watch?v=S6vDgLwJ7n8&list=PLfdtiltiRHWF5Rhuk7k4UAU1_yLAZzhWc。我迷路了,看不懂这些台词

function get($path = null)----这是什么意思?据我了解,它说“获取$path 的值”。但这让我想到另一个问题,我在哪里可以获得$path 的值?请赐教并将此声明翻译成英文。

if ($path) ----- 这会检查 $path 是否有值吗?

$config = $config[$bit] ---- 这是我的第一次遇到这个,我无法理解,因为其中有一个带有变量的括号。请赐教并教我如何翻译并用简单的英语阅读。

【问题讨论】:

  • 参考:functions in php
  • 附带说明,您可能想找到更好的教程,因为您显示的代码存在许多问题,例如它访问全局状态和静态,这很容易导致无法维护的应用程序充满副作用和僵化、难以更改的代码。
  • 嗨,戈登,你能推荐一个好的吗?

标签: php variables object get


【解决方案1】:
function get($path = null)

该行声明了一个名为get 的函数,它将接受一个名为path 的参数。它还为path 提供了一个默认值为空。简而言之,这意味着如果没有向此函数发送路径,则将路径视为null 值。

这可以用不同的例子更好地解释

   function display($message="Hello World")  
   {
     echo $message;
   }

如果这个函数像这样调用

display("Testing"); // It will output `Testing`
display(); // It will output `Hello World`

其次

$config[$bit];

表示$config 数组中的值,该数组的索引存储在$bit 变量中。

例如

$a=array();
$a["test"]=1;
$index="test";

echo $a["test"];    //echoes 1
echo $a[$index];    //echoes 1

【讨论】:

    【解决方案2】:
    function get($path = null)
    

    这是一个函数声明,其中$path 的默认值已设置。没有更多或更少。默认值为NULL,这意味着......好吧,什么都没有。您仍然可以交出一个参数并覆盖默认值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-19
      • 2020-03-19
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 2014-04-20
      • 2021-01-12
      • 1970-01-01
      相关资源
      最近更新 更多