php fputcsv() 函数csv数据读写数据库文件代码
fputcsv() 函数用于将数据格式为csv格式,以便写入文件或者数据库.
1.将字符串写入csv文件中,代码如下:
$test_array = array ( array ( "111" , "sdfsd" , "sdds" , "43344" , "rrrr" ), array ( "sssssssss" , "gdfgfd" , "232323" , "wwewe" , "dsfds" ), array ( "fgfg" , "e4343" , "dsfds" , "w2332" , "xcvxc" ), array ( "11212" , "2323" , "344343" , "344343" , "rerreer" ), array ( "fds" , "43344444" , "33333333" , "ttttttt" , "gggggggggggg" ), array ( "kdfs" , "dsfdsfds" , "wewewe" , "sdsdddddddd" , "wwwwwwwwwww" ) //开源代码phpfensi.com ); $file = fopen ( "test.csv" , "w" ) or die ( "Can't Open test.csv" ); foreach ( $test_array as $line_array ) { $isSuccess = fputcsv ( $file , $line_array ); print $isSuccess . "<br>" ; if ( $isSuccess ===false) { die ( "Can't write csv line" . $line_array ); } } fclose( $file ) or die ( "Can't close file test.csv." );fputcsv()函数返回所写入行的字符的个数或者false,当写入失败时返回false.
2.将格式化的csv字符串保存到字符串中,代码如下:
$test_array = array ( array ( "111" , "sdfsd" , "sdds" , "43344" , "rrrr" ), array ( "sssssssss" , "gdfgfd" , "232323" , "wwewe" , "dsfds" ), array ( "fgfg" , "e4343" , "dsfds" , "w2332" , "xcvxc" ), array ( "11212" , "2323" , "344343" , "344343" , "rerreer" ), array ( "fds" , "43344444" , "33333333" , "ttttttt" , "gggggggggggg" ), array ( "kdfs" , "dsfdsfds" , "wewewe" , "sdsdddddddd" , "wwwwwwwwwww" ) ); ob_start(); $file = fopen ( "php://output" , "w" ) or die ( "Can't Open php://output" ); foreach ( $test_array as $line_array ) { $isSuccess = fputcsv ( $file , $line_array ); if ( $isSuccess ===false) { die ( "Can't write csv line" . $line_array ); } } fclose( $file ) or die ( "Can't close file test.csv." ); $result = ob_get_contents(); ob_end_clean();以用fgetcsv(file,length,separator,enclosure)函数读取csv文件.
fgetcsv的参数说明如下:
file:需要读取的csv文件,此参数是必需的。
length:表示大于csv文件中最长的行的长度的值。php5之前是必需参数。在php5中是可选参数,如果不设置此参数或者将其设为0,php将会读取.
一整行的数据。如果行的长度超过8192个字节时,应该将length值设定一个数,而不是让php自动去计算行的长度。
separator:指定数据的分隔符,默认是逗号,如果指定为[;],那么fgetcsv函数将按照[;]来解析行数据。
fgetcsv的返回值:
根据file的一行数据,返回一个数组,如果读取文件出错,则返回false,到达文件尾部时,也返回false.
下面是一个读取test.csv文件的例子:
$file = fopen ( 'test.csv' , 'r' ) or die ( "Can't open file test.csv" ); $color = "#ff0000" ; print '<table border=0>' ; while ( $csv_line = fgetcsv ( $file )) { print "<tr>" ; $len = count ( $csv_line ); for ( $i =0; $i < $len ; $i ++) { if ( $i %2==0) $color = "#cccccc" ; else $color = "#999999" ; print '<td bgcolor=' . $color . '>' .htmlentities( $csv_line [ $i ]). '</td>' ; } print "</tr>" ; } print '</table>' ; fclose( $file ) or die ( "Can't close file test.csv!" );查看更多关于php fputcsv() 函数csv数据读写数据库文件代码 - ph的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did30227