strtotime() 应该 return 0 如果参数也是 0
strtotime() should return 0 if the argument is also 0
如果参数也是 0,我怎样才能使函数 strtotime()
变为 return 0?
在我的示例中,$testvar2 returns "empty".
$testvar = 0;
$testvar2 = strtotime($testvar);
print_r($testvar2);
public static function myStrToTime($var=null)
{
if($var)
return strtotime($var);
return 0;
}
无意冒犯,但也许您应该在 PHP 上查看更多教程。 :)
它不是返回空而是返回你 bool(false)
。检查 var_dump 而不是 print_r.
解决方法:
$testvar2 = ($testvar) ? strtotime($testvar) : 0;
只需简单地使 ternary operator, since strtotime()
将 return 为假,如果它失败,您可以简单地 return 0 否则它将 return 正确的值。
$testvar2 = strtotime($testvar)?:0;
只需添加对该变量的检查(0、false、null、未设置等)。试试 -
$testvar2= (!empty($testvar)) ? strtotime($testvar) : 0;
function getTime($testvar){
return ($testvar == 0)? 0 : strtotime($testvar);
}
如果参数也是 0,我怎样才能使函数 strtotime()
变为 return 0?
在我的示例中,$testvar2 returns "empty".
$testvar = 0;
$testvar2 = strtotime($testvar);
print_r($testvar2);
public static function myStrToTime($var=null)
{
if($var)
return strtotime($var);
return 0;
}
无意冒犯,但也许您应该在 PHP 上查看更多教程。 :)
它不是返回空而是返回你 bool(false)
。检查 var_dump 而不是 print_r.
解决方法:
$testvar2 = ($testvar) ? strtotime($testvar) : 0;
只需简单地使 ternary operator, since strtotime()
将 return 为假,如果它失败,您可以简单地 return 0 否则它将 return 正确的值。
$testvar2 = strtotime($testvar)?:0;
只需添加对该变量的检查(0、false、null、未设置等)。试试 -
$testvar2= (!empty($testvar)) ? strtotime($testvar) : 0;
function getTime($testvar){
return ($testvar == 0)? 0 : strtotime($testvar);
}