tags:

views:

91

answers:

3

I'm looking for the simplest way to take a single variable such as:

$variable = 'left,middle,right';

and write it to an array(); split at the commas.

+14  A: 
$array = explode(',', $variable);
jasonbar
implode and explode will be some of your best friends ;)
Matt
+1  A: 

In case you string gets a little bit more complex (i.e. elements can be in quotes and both the delimiter and the quoting character can appear within an element) you might also be interested in fgetcsv() and str_getcsv()

$variable = '"left,right","middle", "up,down"';
$row = str_getcsv($variable);
var_dump($row);

prints

array(3) {
  [0]=>
  string(10) "left,right"
  [1]=>
  string(6) "middle"
  [2]=>
  string(7) "up,down"
}
VolkerK
That's pretty neat, I didn't know about that.
Helgi Hrafn Gunnarsson
A: 

you can also use preg_split()

$variable = 'left  ,  middle,   right';
print_r ( preg_split("/\s*,\s*/",$variable));
ghostdog74