重复使用PHP变量

重复使用PHP变量,php,variables,Php,Variables,我很好奇人们对重新使用PHP变量的具体案例的看法 分解逗号分隔的字符串时,假设$names变量本身来自其他地方,以后不用于其他任何用途: $names = 'Bob,Jim,Carol'; $nameArray = explode($names); foreach ($nameArray as $name) { // etc. } 与: $names = 'Bob,Jim,Carol'; $names = explode($names); foreach ($names as $name) {

我很好奇人们对重新使用PHP变量的具体案例的看法

分解逗号分隔的字符串时,假设$names变量本身来自其他地方,以后不用于其他任何用途:

$names = 'Bob,Jim,Carol';
$nameArray = explode($names);
foreach ($nameArray as $name) { // etc. }
与:

$names = 'Bob,Jim,Carol';
$names = explode($names);
foreach ($names as $name) { // etc. }
依我看,第二个版本写得更快,也不容易出现打字错误,但你可以说第一个版本更可读。在第二个版本中,PHP可能需要做一些额外的工作来将字符串变量转换为数组变量,但它使用的变量更少


性能在这里可能不是什么大问题。人们对一种方法有强烈的偏好吗

从技术上讲,这完全可以

<>但是我仍然认为这是一个不好的做法,因为这可能会导致其他开发人员之间的混淆,甚至在稍后的时间里查看代码。


我个人倾向于对更重要的变量使用较短的名称,即在下面的代码行中更经常使用的变量。如果数组更重要,我会给字符串命名为namesStr。

我会说这是风格的问题。在某些地方可能还可以,但在某些地方则不然。但是为什么要到此为止呢?您甚至可以使用不同的代码

<?php

$names = 'Bob,Jim,Carol';
foreach (explode(',', $names) as $name) {
    echo $name . PHP_EOL;
}

对一些人来说,这看起来很糟糕,对一些人来说是好事

我两个都用。在第一个示例中,您可以为第一个变量指定一个详细的名称,而不是在某处应用注释

如果$names=explode',','Bob,Jim,Carol,…',第一个变量太长,无法容纳一行,我将使用第二个示例;变长了

在你的简单情况下,我会写

foreach(explode(',', array('Bob,Jim,Carol')) as $name) { ..
但这可能不太常见,因为硬编码值也可能位于对象的属性、常量或当前范围之外的任何其他源中


我的一般想法是避免不必要的变量,这些变量只使用一次,直到代码看起来很奇怪,这是非常主观的,可能是因为太多的paren或太长的行。

人们的意见->太离题了。因此,这不是一个论坛,而是一个问答网站。@Rizier123据我所知,可能有一个行业标准,但没有,使问题不仅反映人们的意见,而且实际上影响到例如求职之类的问题。@chelmertz OP显然是在征求人们的意见,因此这只能导致讨论和意见,刚刚下班的-topic@chelmertz我认为他们的观点可能是一种强烈的共识,支持一种观点而不是另一种观点。如果有,这将是有价值的信息PHP程序员我包括在内。事实上,海事组织没有这样做,这也是有价值的信息。