php взорвать все символы

Я ищу эквивалент того, что в js было бы 'this is a string'.split('') для PHP.

Если я попробую $array = explode('', 'testing');, я получаю сообщение об ошибке Warning: explode() [function.explode]: Empty delimiter in

Есть другой способ сделать это?


person qwertymk    schedule 21.03.2012    source источник


Ответы (4)


Как указано в вашей ошибке, explode требует разделителя для разделения строки. Вместо этого используйте str_split:

$arr = str_split('testing');

Вывод

Array
(
    [0] => t
    [1] => e
    [2] => s
    [3] => t
    [4] => i
    [5] => n
    [6] => g
)
person Josh    schedule 21.03.2012
comment
как насчет акцентов? - person Quentin D; 26.10.2020

Используйте функцию str_split.

$array = str_split( 'testing');
person nickb    schedule 21.03.2012

$string = "TEST";

echo $string[0];  // This will display T

Нет необходимости его взрывать

person Mark Roach    schedule 21.03.2012
comment
Как бы вы создали массив из строки, каждый символ как отдельный элемент в массиве? - person Tadeck; 22.03.2012
comment
PHP автоматически рассматривает его как массив, если вы относитесь к нему как к одному, и дает каждому символу ключ в зависимости от его позиции. - person Mark Roach; 22.03.2012
comment
Да неужели? См. Это: codepad.org/SRsULXQE (Предупреждение: array_map (): аргумент № 2 должен быть массив). -1 - person Tadeck; 22.03.2012
comment
Он хотел сказать: PHP будет индексировать строку как массив. Но это не массив, и его нельзя использовать в функциях, требующих ввода массива. Однако вы можете перебрать строку и извлечь отдельный символ с той же нотацией, что и массив, с помощью цикла for по strlen строки. - person nickb; 22.03.2012

Чтобы разделить строку на ARRAY, лучше всего использовать

$arr= str_split($string);
person user3470929    schedule 21.02.2015