2011-01-19 15 views
15

Decir que tengo el siguiente: "44-xkIolspO"¿Se divide en dos variables?

quiero volver 2 variables:

$one = "44"; 
$two = "xkIolspO"; 

lo que sería la mejor manera de hacer esto?

+0

Recuerde, las listas manuales todas las funciones que usted podría desear: http://php.net/ref.strings – Jonah

Respuesta

31

Prueba esto:

lista

($ una, $ dos) = split ("-", "44-xkIolspO", 2);

list($one, $two) = explode("-", "44-xkIolspO", 2); 
+1

impresionante, excepto que [dividida está obsoleta] (http://php.net/manual/ en/function.split.php). Una solución más a prueba de futuro probablemente sería [explotar] (http://php.net/manual/en/function.explode.php). – sdleihssirhc

+0

use preg_split ("/ - /", "44-xkIolspO"); –

+1

Actualicé la publicación para usar explotar. Espero que no esté en desuso aún. – Chandu

5

PHP tiene una función llamada preg_split() divide una cadena usando una expresión regular. Esto debería hacer lo que quieras.

O explode() podría ser más fácil.

$str = "44-xkIolspO"; 
    $parts = explode("-", $str); 
    $one = $parts[0]; 
    $two = $parts[1]; 
+0

. No creo que preg_split esté cerca de ser necesario en este caso. El análisis de expresiones regulares es mucho menos eficiente que una cadena delimitadora. – Jonah

Cuestiones relacionadas