array转CSV后,0都不见了

楼主: chlorine (绿)   2015-02-05 06:56:47
Array 的名字是$finalResultPM 因为里面的元素每次都不一样
但会比30个少,可是为了写进mysql,我必须把他补满30个
mysql的字段是int,且字符限制4
array2csv这个function是我从github上找的,在补完0后
转成csv,这些元素都不见了,请问问题在
1> 问题在array_pad的话,那我可能用其他方式来补array,比如说例出个数
如果位数少于30,就不断补0(可能要用string),直到结束,再把他转回int
2>问题在array2csv的功能,这可能就自已重写这一段。
麻烦前辈解答了
$finalResultPM = array_pad($finalResultPM , 30, "0");
print_r ($finalResultPM);
$csvTestPM = array2csv($finalResultPM, ",");
echo $csvTestPM;
function array2csv( $list, $sep=',' )
{
if( !is_array( $list ) ) return false;
foreach( $list as $line )
{
if( !is_array( $line ) ) return false;
unset( $tmpl );
foreach( $line as $clm )
{
if( eregi( '[",n]', $clm ) )
{
$tmp = str_replace( '"', '""', $clm );
$tmpl[] = '"'.$tmp.'"';
}
else {
$tmpl[] = $clm;
}
}
$str .= implode( $sep, $tmpl )."";
}
return $str;
}
//
作者: serotw (弑龙)   2015-02-11 23:03:00
$tmpl[] = strval($clm); //try
作者: MOONRAKER (㊣牛鹤鳗毛人)   2015-02-12 13:47:00
是strval()还是intval()

Links booklink

Contact Us: admin [ a t ] ucptt.com