parse - str_split php
PHP: divide una cadena en una matriz foreach char (5)
Estoy creando un método para que tu contraseña necesite al menos una captura y un símbolo o número. Estaba pensando en dividir la cadena para perder caracteres y luego usar preggmatch para contar si contiene un capital y un símbolo / número.
sin embargo, hice algo como esto en el script de acción, pero no puedo entender cómo se llama esto en php. No puedo encontrar la forma de poner cada carbonilla de una palabra en una matriz.
Ejemplo de AS3
for(var i:uint = 0; i < thisWordCode.length -1 ; i++)
{
thisWordCodeVerdeeld[i] = thisWordCode.charAt(i);
//trace (thisWordCodeVerdeeld[i]);
}
Gracias, Matthy
Como la función str_split()
no es segura para varios bytes, una solución fácil para dividir cadenas codificadas en UTF-8 es usar preg_split()
con el modificador u (PCRE_UTF8)
.
preg_split( ''//u'', $str, null, PREG_SPLIT_NO_EMPTY )
Puede acceder a los caracteres en cadenas de la misma forma que accedería a un índice de matriz, por ejemplo
$length = strlen($string);
$thisWordCodeVerdeeld = array();
for ($i=0; $i<$length; $i++) {
$thisWordCodeVerdeeld[$i] = $string[$i];
}
También podrías hacer:
$thisWordCodeVerdeeld = str_split($string);
Sin embargo, es posible que le resulte más fácil validar la cadena como una cadena completa, por ejemplo, utilizando expresiones regulares.
Puede acceder a una cadena usando []
, como lo hace para las matrices:
$stringLength = strlen($str);
for ($i = 0; $i < $stringLength; $i++)
$char = $str[$i];
Una solución menos legible, pero de mejor rendimiento, al iterar sobre muchas cadenas, podría estar utilizando isset
para verificar el final de la cadena. Esto podría tener un mejor rendimiento porque isset
es una construcción de lenguaje y strlen
es una función:
for ($i = 0; isset($value[$i]); $i++) {
"do something here"
}
Esta pregunta debería proporcionar más antecedentes.
puedes convertir una cadena en una matriz con php.net/manual/en/function.str-split.php y usar foreach
$chars = str_split($str);
foreach($chars as $char){
// your code
}