Empty string Does'n returns Empty array!
$arr0 = str_split("");
print_r($arr0);
Array
(
[0] =>
)
(PHP 5, PHP 7, PHP 8)
str_split — Convertit une chaîne de caractères en tableau
$string
, int $length
= 1): arrayConvertit une chaîne de caractères en tableau.
string
La chaîne d'entrée.
length
Longueur maximale de chaque élément.
Si le paramètre optionnel length
est spécifié, le tableau retourné sera découpé en sous-parties,
chacune de taille length
, à l'exception
de la dernière sous-partie qui peut être plus courte si la chaîne
ne se divise pas de manière égale.
La valeur par défaut de length
est 1
,
ce qui signifie que chaque sous-partie aura une taille d'un octet.
Si length
est plus petit que 1
,
une ValueError sera déclenchée.
Version | Description |
---|---|
8.0.0 |
Si length est plus petit que 1 ,
une ValueError sera déclenchée;
auparavant, une erreur de type E_WARNING
était emise, et la fonction retournait false .
|
Exemple #1 Exemple avec str_split()
<?php
$str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str, 3);
print_r($arr1);
print_r($arr2);
?>
L'exemple ci-dessus va afficher :
Array ( [0] => H [1] => e [2] => l [3] => l [4] => o [5] => [6] => F [7] => r [8] => i [9] => e [10] => n [11] => d ) Array ( [0] => Hel [1] => lo [2] => Fri [3] => end )
Note:
str_split() va effectuer la découpe dans les bits, plutôt que dans les caractères lors de l'utilisation avec une chaîne de caractères encodée en multioctets. Utilisez mb_str_split() pour séparer la chaîne en points de codes.
Empty string Does'n returns Empty array!
$arr0 = str_split("");
print_r($arr0);
Array
(
[0] =>
)
A good use of str_split is reverse translating an amino acid sequence.
<?php
/* reverse translate an aa sequence using its dna counterpart */
function reverseTranslate($aaSeq,$ntSeq){
$nt=str_split($ntSeq,3);
$aa=str_split($aaSeq,1);
$gapChar=array('*','-');
$numAa=count($aa);
$ntIndex=0;
$newNtSeq="";
for($i=0;$i<$numAa;$i++){
// if the aa is a gap, then just put on a gap character
if(in_array($aa[$i],$gapChar)){
$newNtSeq.='---';
}
else{
$newNtSeq.=$nt[$ntIndex];
$ntIndex++;
}
}
return $newNtSeq;
}
?>