PHP: $a = 'ремонт котлов'; array( [0]=>[ремонт] ( [0] =>[р] [1] =>[е] [2] =>[м] [3] =>[о] [4] =>[н] [5] =>[т] ) [1]=>[котлов] ( [0] =>[к] [1] =>[т] [2] =>[л] [3] =>[о] [4] =>[в] ) )
PHP: <?php $str = 'ремонт котлов'; $words = explode(' ',$str); $output = []; foreach($words as $word) { $output[$word] = preg_split('//u', $word, -1, PREG_SPLIT_NO_EMPTY); }
Не подходит вот выдает PHP: Array ( [ремонт] => Array ( [0] => ремонт ) [котлов] => Array ( [0] => котлов ) )
Тогда нужно не утверждать, что что-то не подходит, а разбираться в причинах, почему именно у вас не работает. У вас очень старая версия PHP, поэтому не поддерживает короткий синтаксис объявления массивов.
Хороший вопрос и причин может быть масса. Включите, если не включен, вывод ошибок. Покажите реальный код того, что вы сейчас сделали.
У вас синтаксическая ошибка в примере массива. + $output[] = $word; $output[] = preg_split('//u', $word, -1, PREG_SPLIT_NO_EMPTY); --- Добавлено --- хоть PHP 4 вруби, код автора все равно справится с нюансом [] на array()
Parse error: syntax error, unexpected '[' in Z:\home\test1.ru\www\index.php on line 73 строка 73 $output = []; код только ваш в файле
в теме был дан ответ на все про все. Тем более сами же поменяли/откатили на предшествующую конструкцию объявления переменной "как массив"