作者layachang (这样笑着很开心!!)
看板PHP
标题Re: [请益] 输出csv档
时间Fri Nov 24 14:08:29 2006
我用了一个很烂的方法Q_Q 不过好像是可以work 但是会有一个小小的bug
$row['a'] = "SN";
$row['b'] = "Laya";
$row['c'] = "CSV,测试";
foreach ($row as $key => $value)
{
if(strpos($value,",")!=0)
{
$row[$key] = '"'.$value.'"';
}
}
$con = $row['a'].','.$row['b'].','.$row['c'];
$con.="\n";
echo $con;
说穿了就是用穿插'及"两种符号
但是以上的方法如果$row['c']逗号再第一个的话就会不work了
我有试过 strpos($value,",")!==0 [使用绝对不等於]
可是他这样会把全部都加上"" (如果你不介意的话乾脆全部都加上""好了 XD)
话说回来使用!==为什麽他三个都判断成有,在资料中 我就不知道了
盼有人解答噜Q口Q
--
淡而无味, 可是芬芳, 就当它是酒罢......
没有酒的时候, 到河边去捧饮自己的影子......
没有嘴的时候, 用伤口呼吸....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.124.100.15
1F:推 bull975:把 strpos($value,",")!=0 改成 11/24 14:15
2F:→ bull975:gettype(strpos($value,",")) != 'boolean' 试试 11/24 14:16
3F:推 layachang:可以勒( ̄▽ ̄#)﹏﹏ 谢啦谢啦~! 11/24 14:17
4F:→ bull975:你看一下strpos不同情况下回传的值吧 11/24 14:24
5F:推 LPH66:正确说来是要用strpos($value,",")!==FALSE 11/24 16:44
7F:→ LPH66:!== 和 === 两个比较会把型态也比较进去 11/24 16:47