array轉CSV後,0都不見了

看板PHP作者 (Chlorine)時間10年前 (2015/02/05 06:56), 10年前編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
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; } // ----------------------輸出結果------------------------ Array ( [0] => Array ( [0] => 2121 [1] => 2158 [2] => 2706 [3] => 2929 [4] => 3266 [5] => 3328 [6] => 3668 [7] => 3815 [8] => 3823 [9] => 4564 [10] => 4751 [11] => 4777 [12] => 6625 [13] => 6819 [14] => 6840 [15] => 7148 [16] => 7844 [17] => 8462 ) ) 2015-02-04Array ( [0] => Array ( [0] => 2121 [1] => 2158 [2] => 2706 [3] => 2929 [4] => 3266 [5] => 3328 [6] => 3668 [7] => 3815 [8] => 3823 [9] => 4564 [10] => 4751 [11] => 4777 [12] => 6625 [13] => 6819 [14] => 6840 [15] => 7148 [16] => 7844 [17] => 8462 ) [1] => 0 [2] => 0 [3] => 0 [4] => 0 [5] => 0 [6] => 0 [7] => 0 [8] => 0 [9] => 0 [10] => 0 [11] => 0 [12] => 0 [13] => 0 [14] => 0 [15] => 0 [16] => 0 [17] => 0 [18] => 0 [19] => 0 [20] => 0 [21] => 0 [22] => 0 [23] => 0 [24] => 0 [25] => 0 [26] => 0 [27] => 0 [28] => 0 [29] => 0 ) ,2121,2158,2706,2929,3266,3328,3668,3815,3823,3877,4564,4751,4777,6819,6840,7148,7844,8462 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 58.189.192.230 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1423090609.A.198.html ※ 編輯: chlorine (58.189.192.230), 02/05/2015 06:58:18

02/11 23:03, , 1F
$tmpl[] = strval($clm); //try
02/11 23:03, 1F

02/12 13:47, , 2F
是strval()還是intval()
02/12 13:47, 2F
文章代碼(AID): #1KqgEn6O (PHP)
文章代碼(AID): #1KqgEn6O (PHP)