• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 733
  • Last Modified:

PHP CSV output and problem with date and escape chararacters

I'm having a problem with escaping commas inside a date field when writing to a CSV file,

the date is in the format of "June 12, 2008, 1:29 pm"
the commas wreck the formatting, how would i change it so this doesn't happen?

Cheers
$list = array (
    'Name,County,Date completed,Coach name, Level, How long known,Psych name,MTP overall score,Statement 1,statement 2,statement 3,Fight average,ID average,CMC average,Res Average,Fight statement 1,Fight Statemt 2,Fight Statemt 3,ID statemt 1,ID statement 2,ID statement 3,CMC statemt 1,CMC statemt 2,CMC Statemt 3,Res Statemt 1,Res Statemt 2,Res Statemt 3',
    ''.$name.','.$date.','.$temp.','.$coach.','.$namelevel.','.$coachingtime.','.$psychologist.','.$temp.','.$temp.','.$temp.','.$temp.','.$a4.','.$b4.','.$c4.','.$d4.','.$a1.','.$a2.','.$a3.','.$b1.','.$b2.','.$b3.','.$c1.','.$c2.','.$c3.','.$d1.','.$d2.','.$d3.'');
 
 
$number = rand(0,101101);
$username = $_SESSION['Username'];
$_SESSION['csv']="temp/mycsv".$number.$username.".jpg";
$fp = fopen('temp/mycsv'.$number.$username.'.csv', 'w');
 
foreach ($list as $line) {
    fputcsv($fp, split(',', $line));
}
 
fclose($fp);

Open in new window

0
FurnakTye
Asked:
FurnakTye
  • 2
1 Solution
 
zemondCommented:
you will need to replace the commas with another delimiter, perhaps - to produce June 12-2008-1:29 pm
0
 
zemondCommented:
$date = str_replace(',', '-', $date);
0
 
marchentCommented:
You can use preg_replace()  function too, to replace comma,
$date = preg_replace("/,/", '-', $date);
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now