我需要在逗号处将我的字符串输入分割成一个数组。
是否有一种方法将逗号分隔的字符串分解为一个平坦的索引数组?
输入:
9,admin@example.com,8
输出:
['9', 'admin@example', '8']
我需要在逗号处将我的字符串输入分割成一个数组。
是否有一种方法将逗号分隔的字符串分解为一个平坦的索引数组?
输入:
9,admin@example.com,8
输出:
['9', 'admin@example', '8']
当前回答
使用explosion()或preg_split()函数使用指定的分隔符拆分php中的字符串
// Use preg_split() function
$string = "123,456,78,000";
$str_arr = preg_split ("/\,/", $string);
print_r($str_arr);
// use of explode
$string = "123,46,78,000";
$str_arr = explode (",", $string);
print_r($str_arr);
其他回答
//Re-usable function
function stringToArray($stringSeperatedCommas)
{
return collect(explode(',', $stringSeperatedCommas))->map(function ($string) {
return trim($string) != null ? trim($string) : null;
})->filter(function ($string) {
return trim($string) != null;
});
}
//Usage
$array = stringToArray('abcd, , dsdsd, dsds');
print($array);
//Result
{ "abcd", "dsdsd", "dsds" }
试着爆炸:
$myString = "9,admin@example.com,8";
$myArray = explode(',', $myString);
print_r($myArray);
输出:
Array
(
[0] => 9
[1] => admin@example.com
[2] => 8
)
使用explosion()或preg_split()函数使用指定的分隔符拆分php中的字符串
// Use preg_split() function
$string = "123,456,78,000";
$str_arr = preg_split ("/\,/", $string);
print_r($str_arr);
// use of explode
$string = "123,46,78,000";
$str_arr = explode (",", $string);
print_r($str_arr);
$string = '9,admin@google.com,8';
$array = explode(',', $string);
对于更复杂的情况,您可能需要使用preg_split。
如果该字符串来自csv文件,我将使用fgetcsv()(如果使用PHP V5.3,则使用str_getcsv())。这将允许您正确地解析引用的值。如果它不是csv,那么爆炸()应该是最好的选择。