2016-03-22 11 views
1

Verileri CSV'ye veriyorum ve bir sorunla karşılaşıyorum. Ben CSV kodu aktardığınızdaPHP - CSV dışa aktarma - Sütun verisinde virgül ekle

$data['name'] = "Test"; 
$data['category'] = "category1, category2, caegory3"; 

, bu kayıtları ihraç ama category1 için ayrı bir sütun, category3 kategori 2 ve ayrı sütun için ayrı bir sütun olun.

Current Output 
------------------------------------------- 
| Name | Category |   |   | 
-------------------------------------------- 
| TEst | category1 | category2 | category3 | 
-------------------------------------------- 


Expected Output 

------------------------------------------------------------ 
| Name | Category      |   |   | 
-------------------------------------------- --------------- 
| TEst | category1,category2,category3 |   |   | 
------------------------------------------------------------ 

Virgülle ayrılmış Dize aynı sütunda ne yapmalıyım?

cevap

4

"" arasında kategori değerlerine sahip olmanız gerekir, böylece virgül yorumlanmaz. Böyle kodunu değiştirebilirsiniz: Gerçekten fputcsv bakmak gerekir

$data['name'] = 'Test'; 
$data['category'] = '"category1, category2, caegory3"'; 
1

. İstediğiniz şeyi, kaçan karakterleri vb. Ile yapar. Bunun yerine bir dosyanın tampon çıktı o isterseniz

http://php.net/manual/en/function.fputcsv.php

istemci yazmak için $fh = fopen('php://output', 'w'); kullanabilirsiniz.