php - 在第n个破折号之前获取字符串( - )

1 php string

我有一个看起来像这样的字符串:

abc-def-ghi-jkl-mno-pqr-stu-vwx-yz我想在第4个破折号之前获取内容,所以有效地,我想abc-def-ghi-jkl分配给一个新字符串,然后我想mno分配给另一个字符串.

我怎么能这样做?我尝试使用explode但是将其更改为数组,我不想这样做.

Mar*_*ler 6

试试这个:

$n = 4; //nth dash
$str = 'abc-def-ghi-jkl-mno-pqr-stu-vwx-yz';  

$pieces = explode('-', $str);
$part1 = implode('-', array_slice($pieces, 0, $n));
$part2 = $pieces[$n];

echo $part1; //abc-def-ghi-jkl
echo $part2; //mno
Run Code Online (Sandbox Code Playgroud)

见演示


http://php.net/manual/en/function.array-slice.php

http://php.net/manual/en/function.explode.php

http://php.net/manual/en/function.implode.php