在函数上请求数组项

时间:2018-06-25 21:26:52

标签: php

如果我想从头开始提取字符串,直到第一个(,) 做这样的事情是安全的做法吗?

$day = explode(',',"Thursday, April 5th, 4:00pm")[0];

代替做

$dayArray = explode(',',"Thursday, April 5th, 4:00pm");
$day = $dayArray[0];

我知道我也可以使用strpossubstr来做到这一点,而且我知道我可以使用preg_match来做到这一点,我的问题是可以可靠地请求孩子,例如{ {1}},直接从函数中获取。

1 个答案:

答案 0 :(得分:-1)

从php.net引用

  

如果定界符为空字符串(“”),则explode()将返回FALSE。如果定界符包含的值不包含在字符串中,并且使用负数限制,则将返回一个空数组,否则将返回一个包含字符串的数组。

这意味着:如果需要绝对确定,那么此代码有效,则应防止传递空字符串爆炸或检查结果是否为false。否则,您可以尝试访问不存在的索引。

您是否考虑改用DateTime :: createFromFormat?这是否有意义,取决于您的要求

短版本是否正常工作取决于您所使用的PHP版本(如前所述)。