2016-05-12 2 views
1

У меня есть список слов, например это одинПередача списка в PHP в другом списке

$words1="Les voitures Le compteur principal capteurs(gaz et l'éclairage) l'humidité L'extérieur" 

и я хочу иметь список, как это:

$words2="Les","voitures","Le","compteur","principal","capteurs(gaz","et","l'éclairage)","l'humidité","L'extérieur" 

я сделал раскол строка по строке списка с помощью взрываются, а затем я не нашел, как добавить «» между строк:

$text_list =explode(" ",$words1); 
+0

'$ words2 = "Лес", "voitures", "Ле", "Compteur", "основным", "capteurs (газ", "Et", "l'Eclairage)"," л» humidité "," L'extérieur "' не является допустимой строкой. –

ответ

1

Попробуйте это: Online Test

Сначала взрывают строку как " ", а затем взрываются с помощью " , ", а также добавить " до и после Implode.

$text_list = explode(" ",$words1); 
echo $words2 = '"'.implode('","', $text_list).'"'; 

вы получите:

"Les","voitures","Le","compteur","principal","capteurs(gaz","et","l'éclairage)","l'humidité","L'extérieur" 

По вашему требованию:

$words2 = explode(",", '"'.implode('","', $text_list).'"'); 
echo gettype($words2); //array 

print_r из $words2:

Array 
(
    [0] => "Les" 
    [1] => "voitures" 
    [2] => "Le" 
    [3] => "compteur" 
    [4] => "principal" 
    [5] => "capteurs(gaz" 
    [6] => "et" 
    [7] => "l'éclairage)" 
    [8] => "l'humidité" 
    [9] => "L'extérieur" 
) 

Другой способ:

$words2 = array('"'.implode('","', $text_list).'"'); 
echo gettype($words2); //array 

print_r из $words2:

Array 
(
    [0] => "Les","voitures","Le","compteur","principal","capteurs(gaz","et","l'éclairage)","l'humidité","L'extérieur" 
) 
+0

Я не понимаю, что вы имеете в виду? –

+0

Я тестировал и работает, чтобы передать его в строку типа Мне нужно быть массивом строк с новым форматом. echo gettype ($ words2); должен быть массивом. –

+0

@HamdiCharef, согласно вашему требованию, я обновляю свой ответ. –

0

Если вы пытаетесь сделать массив из строки, ваш подход действительно - просто используйте функцию explode(). Но если вы пытаетесь заменить пробел в строке запятыми, вы можете использовать функцию str_replace().

$words1="Les voitures Le compteur principal capteurs(gaz et l'éclairage) l'humidité L'extérieur"; 
$commaSeparatedString = str_replace(' ', ', ', $words1); 

Далее вы можете взорвать результат по пробелу, чтобы получить каждое слово с запятой в простом массиве.

$result = explode(' ', $commaSeparatedString);