2017-07-21 2 views
-1
$array = array(' lastname ', ' email ', ' phone '); 
$comma_separated = implode(" ", $array); 

echo $comma_separated; // lastname email phone 

Ich habe den obigen Code, um Zeichenfolge in PHP zu kombinieren oder beizutreten ist, wenn das Element in Array hat extra in gefügten Zeichenfolge hat es zusätzlichen Platz.trimmen bevor implode in PHP zu beschneiden Strings

Erwartetes Ergebnis: Nur ein Leerzeichen zwischen den Wörtern in Echo

Wie zuerst, bevor in Array jedes Element trimmen implodieren

Antwort

2

Nutzung Code Folgende:

$array = array(' lastname ', ' ',' email ', ' phone '); 

$trimedarray=array_map("trim",$array); 

$modifiedarray=array_values(array_filter($trimedarray)); 

$comma_separated = implode(" ", $modifiedarray); 

echo $comma_separated; 
+0

hallo, was ich fragte falsch i einen leeren Wert in Array bemerkt didnt was, wenn '$ array = array ('Nachname', '', 'E-Mail', 'Telefon'); wie man nur Elemente erhält, die nicht leer sind ' – Martin

+0

$ emptyelementsremovedarray = array_filter ($ array); @Martin – Karthik

+0

Überprüfen Sie jetzt .. Ich bearbeitet für Ihre Anforderung @Martin – Karthik

1

Trim die Array-Elemente mit trim von array_map und schließlich tun ein array_filter mit strlen als Rückruf.

$array = array(' lastname ', ' ',' email ', ' phone ');  

$new_arr = array_filter(array_map('trim',$array),'strlen'); 

$comma_separated = implode(" ", $new_arr); 

echo $comma_separated; 

Ausgabe

lastname email phone 

Siehe Live Demo

+0

Hallo, was ich fragte, ist falsch, ich habe nicht bemerkt, einen leeren Wert in Array was ist, wenn $ Array = Array ('Nachname', '', 'E-Mail', 'Telefon "); wie man nur Elemente erhält, die nicht leer sind ' – Martin

+0

@Martin Vielleicht möchten Sie dies versuchen .. Siehe aktualisierte Antwort – NID

2

1.: Verwendung array_filter das leere Element des Arrays zu filtern

2.: Verwendung array_map Funktion die trim Funktion each value innerhalb der array

3. anzuwenden: Verwendung implode-break die array into string

$array = array(' lastname ', ' email ','',' phone '); 

$string= implode(" ", array_map("trim",array_filter($array))); 

echo $string;