The fputcsv() function in PHP is an inbuilt function which is used to format a line as CSV(comma separated values) file and writes it to an open file. The file which has to be read and the fields are sent as parameters to the fputcsv() function and it returns the length of the written string on success or FALSE on failure.
Syntax:
int fputcsv ( $file, $fields, $separator, $enclosure )
Parameters: The fputcsv() function in PHP accepts four parameters as explained below.
- $file: It is a mandatory parameter which specifies the file.
- $fields: It is a mandatory parameter which specifies which array to get data from.
- $separator: It is an optional parameter which specifies the field separator. By default the fputcsv() function uses comma.
- $enclosure: It is an optional parameter which specifies the field enclosure character. By default the fputcsv() function uses.
Return Value: This function returns the length of the written string on success or FALSE on failure.
Exceptions:
- If an enclosure character is contained in a field, it will be escaped by doubling it, unless it is immediately preceded by an escape_char.
- Enabling the auto_detect_line_endings run-time configuration option may help resolve the problem of PHP properly recognizing the line endings when reading files either on or created by a Macintosh computer.
Below programs illustrate the fputcsv() function:
Program 1:
<?php
$employees = array ( "Raj, Singh, Developer, Mumbai" ,
"Sameer, Pandey, Tester, Bangalore" ,
"Raghav, Chauhan, Manager, Delhi" );
$myfile = fopen ( "gfg.csv" , "w" );
foreach ( $employees as $line )
{
fputcsv ( $myfile , explode ( ',' , $line ));
}
fclose( $myfile );
?>
|
Output:
Raj, Singh, Developer, Mumbai
Sameer, Pandey, Tester, Bangalore
Raghav, Chauhan, Manager, Delhi
Program 2:
<?php
$random_data = array (
array ( "abc, efg, jhi, klm" ),
array ( "123, 456, 789" ),
array ( "11aa, 22bb, 33cc, 44dd" )
);
$myfile = fopen ( "gfg.csv" , "w" );
foreach ( $random_data as $line )
{
fputcsv ( $myfile , $line );
}
fclose( $myfile );
?>
|
Output:
abc, efg, jhi, klm
123, 456, 789
11aa, 22bb, 33cc, 44dd
Reference: http://php.net/manual/en/function.fputcsv.php
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!