left dividir characters caracter cadena buscar array php string strtok

dividir - strtok php



¿Cuál es el uso de la función strtok() en PHP, cómo es mejor que otra función de cadena haciendo lo mismo? (4)

¿Cuál es el uso de la función strtok () en PHP, cómo es mejor que otra función de cadena haciendo lo mismo?


Se prefiere strtok sobre otras funciones cuando tiene que dividir una cadena en más de un delimitador .

La otra función que esta como preg_split , split está basada en preg_split regulares y tendrá una sobrecarga asociada con ellos.


strtok() es una función excelente y muy útil, pero:

  • Esta función puede devolver FALSE booleano, pero también puede devolver un valor no booleano que se evalúa como FALSE . ( Manual PHP )

  • Si desea tokenizar solo una letra, explode( ) es mucho más rápido en comparación con strtok() . ( Source )

  • Si tiene una solución crítica para el uso de la memoria, debe tener en cuenta que la función strtok mantiene el parámetro de la cadena de entrada (¿o una referencia a él?) En la memoria después del uso. ( Source )


No hay otra función de cadena que haga lo mismo . Las funciones como explode devuelven la cadena dividida completa en una matriz. por el contrario, strtok solo devuelve una pieza a la vez, y cada llamada subsiguiente devuelve la siguiente. Esto es potencialmente mucho más económico y conserva la memoria para cuerdas grandes.


$addr=strtok($_SERVER[''REQUEST_URI''],''?'');

pero no lo llames "mejor". Es solo otra forma de hacerlo.