2010-08-17 63 views
44

如何在第一次出現 - (減號)時將字符串拆分爲兩個帶有PHP的$ vars?

我發現如何分割每個「 - 」,但不僅在第一次出現。

例如:

this - is - line - of whatever - is - relevant 
$var1 = this 
$var2 = is - line - of whatever - is - relevant 

注意,還剝離了第一個 「 - 」。

在此先感謝您的幫助!

回答

29
$array = explode('-', 'some-string', 2); 

然後你可以做$var1=$array[0]$var2=$array[1]

+0

謝謝你,我只是用更多的需求編輯我的問題,對不起。 – Jimbo 2010-08-17 23:59:52

+0

感謝Brad,這也會有用。我感謝你的時間。 – Jimbo 2010-08-18 00:41:47

103

這很簡單,使用額外paramater到explode,很多人不知道的是有:

list($before, $after) = explode('-', $source, 2);

+1

這很酷。那麼我 $ fixed_string = str_replace(「 - 」,「」,$ before);擺脫 - ? – Jimbo 2010-08-18 00:02:39

+1

不,第一個'-'將作爲'explode()'函數的一部分被刪除。 – staticsan 2010-08-18 00:16:38

+1

這完美地滿足了我的需求。我想知道如果我添加了一個$中,然後爆炸 - 源3?這會工作,還是應該使用布拉德提到的array [x]? – Jimbo 2010-08-18 00:31:21

0

這裏是你需要的東西:如果在使用爆炸()名單():

list($var1, $var2) = explode(' - ', 'this - is - line - of whatever - is - relevant', 2); 

注意周圍的空間 「 - 」(減號)

1

可以使用strtok功能:

$first = strtok($string, '-'); 
相關問題