Ответ 1
Используйте str_split
http://www.php.net/manual/en/function.str-split.php
Как преобразовать строку в массив? Например, у меня есть эта строка:
$str = 'abcdef';
И я хочу получить:
array(6) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
[3]=>
string(1) "d"
[4]=>
string(1) "e"
[5]=>
string(1) "f"
}
Используйте str_split
http://www.php.net/manual/en/function.str-split.php
Вы можете прокручивать строку и возвращать каждый символ или набор символов, используя substr в php. Ниже приведен простой цикл.
$str = 'abcdef';
$arr = Array();
for($i=0;$i<strlen($str);$i++){
$arr[$i] = substr($str,$i,1);
}
/*
OUTPUT:
$arr[0] = 'a';
$arr[1] = 'b';
$arr[2] = 'c';
$arr[3] = 'd';
$arr[4] = 'e';
$arr[5] = 'f';
*/
Каждая строка является массивом в PHP
Итак, просто
$str = 'abcdef';
echo $str[0].$str[1].$str[2]; // -> abc
Обратите внимание, что начиная с php 5.5 вы можете ссылаться на строковые символы по индексам массивов, что в большинстве случаев предотвращает необходимость решения (-ов) выше.
$str = 'abdefg';
echo $str[4]; // output: e
Другое решение:
$string = 'abcdef';
$arr = [];
for($i=0;$i<strlen($string);$i++){
$arr[] = substr($string,$i,1);
}
<?php
$str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str, 3);
print_r($arr1);
echo "<br/>";
print_r($arr2);
?>