下面这只是我的脚本的一行,但我想问一下它在语法方面是否好?我已经将其从函数的其余部分中删除,它用于显示login_time
,从表中获取数据并检查是否为offline
以显示N/A
,否则显示实际信息。。所以请告诉我。我问的是一些基本问题,比如'offline'
是否设置正确,或者应该使用""
之类的东西。将不胜感激。哦,还要从($data['Status'] == 'offline')
中删除()
吗?
.....................
$replace = array
(
'total_time' => $data['Status'] == offline ? $this->secondsToTime(intval($data['TotalTime'])) : $this->secondsToTime(intval($data['TotalTime']) + (time() + 10800) - intval($data['LoginDT'])),
'login_time' => $data['Status'] == offline ? "N/A" : $this->secondsToTimeCurr(time() + 10800 - intval($data['LoginDT'])));
.....................
这很混乱,不要在数组内部进行:
$replace['login_time'] = ($data['Status'] == 'offline') ?
"N/A" : $this->secondsToTimeCurr(time() + 10800);
三元是好的,但它意味着短,如果它很难阅读,请使用正则if语句。
if($data['Status'] == 'offline'){
$replace['login_time'] = "N/A";
}else{
$replace['login_time'] = $this->secondsToTimeCurr(time() + 10800);
}
另一种方法是使用更可变的
$isOffline = $data['Status'] == 'offline';
$secondsToTimeCurr = $this->secondsToTimeCurr(time() + 10800);
$replace['login_time'] = $isOffline ? "N/A" : $secondsToTimeCurr;
有更多的方法可以编写相同的代码,最重要的是可读性。
至于单引号,它使字符串一字不差。
对于括号来说,这只是为了可读性。
希望这能有所帮助。