php - 剪切字符串直到特定字符

时间:2017-09-19 16:57:48

标签: php string substring

我查看了一些早期的stackoverflow问题,但我无法在任何地方找到我想要的东西:

我想将使用$_GET获得的字符串拆分为特定字符。

以下是一个示例网址:mywebsite/savettimes.php?time=1%3A15%2E123

'time ='之后的东西基本上只是一个时间,如1:13.123。我想只得到分钟,在这种情况下为1。我可以使用substr(),但问题是我不知道会议记录的位数。它可能是1或2。

我尝试使用多个if语句,但我想要一个更好的方法。

$time = $_GET['time'];
if (strlen($time) == 6) {//If only 1 digit of minutes is there
  $min = substr($time, 0, 1);
} else if (strlen($time) == 7) {
  $min = substr($time, 0, 1);
}

所以,我想将字符串拆分为':'。我该怎么做?

3 个答案:

答案 0 :(得分:1)

轻松strstr可以在第一次:出现之前返回所有内容:

$min = strstr($_GET['time'], ':', true);

或者获得秒。微秒:

list($min, $sec) = explode(':', $_GET['time']);

答案 1 :(得分:0)

$url = "23:13.123.";
$minute =  substr($url, 0, strpos($url, ':'));

答案 2 :(得分:0)

您可以使用php explode功能:

$time = $_GET['time'];
$timeParts = explode(":", $time);
$minute = $timeParts[0];

注意:不建议使用不带过滤器的$_GET[''],但它与此问题无关。