PHP-将特定的$variable设置为NULL

PHP-将特定的$variable设置为NULL,php,html,classname,Php,Html,Classname,因此,如果我用PHP编写了以下代码: $class_name; 我想把它放在我的标记中,如下所示: ... <div class="wrap <?= $class_name ?>"><!-- Content Here --></div> ... 编辑: 我在一个外部HTML文件中使用上面的HTML代码作为我的两个PHP文件的模板(我使用require)。 因此,在第一个php文件中,div.wrap应该只有class=“wrap”,而在另一个文

因此,如果我用PHP编写了以下代码:

$class_name;
我想把它放在我的标记中,如下所示:

...
<div class="wrap <?= $class_name ?>"><!-- Content Here --></div>
...
编辑: 我在一个外部HTML文件中使用上面的HTML代码作为我的两个PHP文件的模板(我使用
require
)。
因此,在第一个php文件中,div.wrap应该只有
class=“wrap”
,而在另一个文件中,它有
class=“wrap red”

使用空字符串:

$class_name=”“

如果您打算在字符串上下文中定期使用它。使用
empty()
进行测试

以下内容被认为是空的:

  • “”(空字符串)
  • 0(0作为整数)
  • 0.0(0作为浮点数)
  • “0”(0作为字符串)
  • 空的
  • 假的
  • array()(空数组)
  • $var;(声明了一个变量,但没有值)
您的许多决定取决于所需的精度级别。例如,在您的更新中,在
class=“wrap”
之后没有尾随空格,但在
class=“wrap red”
之间有空格。如果您不介意尾随空格,并且您确信您的变量将始终是字符串,即使它是空字符串,那么您可以很好地使用原始实现,当变量为空时,您将得到
class=“wrap”

我倾向于认为尽可能精确是件好事。因此,我会在那里设置一个复选框,以防止在不连接字符串时出现尾随空格

...
<div class="wrap<?= empty($class_name) ? '' : " $class_name" ?>"><!-- Content Here --></div>
...
。。。

is_empty不是一个真正的函数,如果你的意思是
empty
请小心
(string)“0”
测试为“empty”,因为它可能不需要:我已经回答了我的问题。如果这是正确的答案,我会接受的。为什么
$class\u name做什么?我没有看到您在任何地方测试
$class\u name
的值,所以
$class\u name=NULL有什么问题?您使用的是
isset()
还是
if($class\u name)
还是什么?这就是你要求做的。没有上下文,不清楚你的“最佳”标准是什么,投票决定结束。如果可能的话,你真的应该避免声明空变量。当然,有时您必须处理空变量—数据库值、将来将连接的空字符串等。在这些情况下,请使用有意义的。。。在您的特定示例中,我甚至不会创建变量。使用测试查看它是否已设置
isset()
...
<div class="wrap<?= empty($class_name) ? '' : " $class_name" ?>"><!-- Content Here --></div>
...