2012-10-15 28 views
0

我想在遇到comma or semicolon時將字符串轉換爲數組。當遇到多個分隔符時將字符串轉換爲數組

的字符串,例如a , b ; c , d ; e將被轉換成

[0] = a 
[1] = b 
[2] = c 
[3] = d 
[4] = e 

我嘗試使用explode和工作正常,到目前爲止,但我可以指定只 一個deliminatorexplode(",",$str)而我想用兩個deliminators。即 逗號和分號。

我不知道是否可以在爆炸函數中指定一個模式作爲第一個參數。

+0

下投票是有點困惑我猜 – Hunt

回答

0

做的另一種方式:

$delimeters = array(',',';'); 

$arr = str_split($str); 
/* 
[0] = a 
[1] = , 
[2] = b 
[3] = ; 
[4] = c 
[5] = , 
[6] = d ... 
*/ 

$filterd = array_filter($arr, function($elem){ return (!in_array($elem , $delimeters)) }); 

基本上,我們將字符串分割到數組中,以便每個字符數組中的元素。 之後,我們正在過濾數組,以僅重新格式化非字符(只更新分隔符數組)。

0

試試這個:

$var_save = strtok($string,',;'); 

echo $var_save; 
相關問題