在调用方法不好的做法中声明一个变量?

时间:2016-03-02 22:42:17

标签: php

如果我要调用一个接受参数的方法,然后同时定义一个变量,那么这会被认为是"糟糕的做法"?

示例:

if( file_exists( $file = "skins/Default/Controllers/Demo.php" ) )
{
    require( $file );
}

我觉得它变得更容易,因为它不需要在上面创建另一个变量,也不会通过两次写入字符串来混淆代码。

2 个答案:

答案 0 :(得分:7)

  

在调用方法错误做法中声明一个变量?

是的,因为它隐藏了其他功能背后的意图。

$file = "skins/Default/Controllers/Demo.php";
if (file_exists($file)) {
    require($file);
}

比以下更容易理解和推理:

if (file_exists($file = "skins/Default/Controllers/Demo.php")) {
    require($file);
}

因为它很容易被误认为是$file == "skins/Default/Controllers/Demo.php",这在if声明中很常见。

答案 1 :(得分:0)

它可能被视为不良做法,因为它降低了代码的可读性(=>可维护性)。

$file = "skins/Default/Controllers/Demo.php";
if( file_exists( $file ) )
{
    require( $file );
}

更具可读性