php - str_split - Varios caracteres de explosión con comas y-(guión)
string to array php (2)
... o si no te gustan las expresiones regulares y aún quieres explotar, puedes reemplazar varios personajes con un solo carácter antes de tu explosión:
$keywords = explode("-", str_replace(array("/n", "/t", "/r", "/a", ",", "-"), "-",
"my string/nIt contains text./rAnd several/ntypes of new-lines./tAnd tabs."));
var_dump($keywords);
Esto sopla en:
array(6) {
[0]=>
string(9) "my string"
[1]=>
string(17) "It contains text."
[2]=>
string(11) "And several"
[3]=>
string(12) "types of new"
[4]=>
string(6) "lines."
[5]=>
string(9) "And tabs."
}
Quiero explode
una cadena para todos:
- espacios en blanco (/ n / t etc)
- coma
- guión (guión pequeño). Me gusta esto >>
Pero esto no funciona:
$keywords = explode("/n/t/r/a,-", "my string");
¿Como hacer eso?
Explotar no puede hacer eso. Hay una buena función llamada preg_split
para eso. Hazlo asi:
$keywords = preg_split("/[/s,-]+/", "This-sign, is why we can''t have nice things");
var_dump($keywords);
Esto produce:
array
0 => string ''This'' (length=4)
1 => string ''sign'' (length=4)
2 => string ''is'' (length=2)
3 => string ''why'' (length=3)
4 => string ''we'' (length=2)
5 => string ''can''t'' (length=5)
6 => string ''have'' (length=4)
7 => string ''nice'' (length=4)
8 => string ''things'' (length=6)
Por cierto, no usar split
, está en desuso.