Recently the company wants to generate reports and generate them in PHP.
Header ("Content-type:application/vnd.ms-excel");
Header ("Content-disposition:attachment;filename=test_data.xls");
I Baidu, seemingly this can be achieved soon, but this file is generated in the browser to download the place,
I want to generate the generated files to the specified directory, so can I implement it?
Also, can you insert a picture inside?
Phpexcel is in English, read for a long time did not read. Is there a direct-generated example to look at?
Here we enclose an example:
/** +----------------------------------------------------------* Import required class library with Java Import * This function has caching function +------------------ ----------------------------------------* @param string $class class Library namespace String * @param string $baseUrl start path * @param string $ext imported file name extension +----------------------------------------------------------* @return Boolen +------------------------ ----------------------------------/Function Import ($class, $baseUrl = ', $ext = '. class.php ') {static $_file = array
();
$class = str_replace (Array ('. ', ' # '), Array ('/', '. '), $class);
if (' = = = = $baseUrl && false = = = Strpos ($class, '/')) {//Check alias import return Alias_import ($class);
} if (Isset ($_file[$class. $baseUrl])) return true;
else $_file[$class. $baseUrl] = true;
$class _strut = explode ('/', $class); if (empty ($BASEURL)) {if (' @ ' = = $class _strut[0] | |
App_name = = $class _strut[0]) {//Load current Project Application class Library $BASEURL = DirName (Lib_path); $class = Substr_replace ($class, BASEname (Lib_path). '
/', 0, strlen ($class _strut[0]) + 1);
}elseif (' strtolower ' = = = ($class _strut[0])) {//The official base Class library $baseUrl = Core_path;
$class = substr ($class, 6); }elseif (Strtolower ($class _strut[0]), array (' org ', ' com ')) {/Org Third party common class Library COM enterprise Common class Library $BASEURL = LI
Brary_path;
}else {//Load other Project Application class Library $class = Substr_replace ($class, ', 0, strlen ($class _strut[0]) + 1); $BASEURL = App_path. '.. /' . $class _strut[0]. '/'. basename (Lib_path). '
/';
} if (substr ($BASEURL,-1)!= '/') $baseUrl. = '/'; $classfile = $baseUrl. $class.
$ext;
if (!class_exists (basename ($class), false) {//If the class does not exist, import the class library file return Require_cache ($classfile); /** * Export Excel Table * @param array $data data, two-dimensional array, each data one record * @param array $title The field name of each column data, an array must be consistent with the data order (can be omitted) * @param str ing $filename Excel name * @param array $field You need to specify the exported data field, and the sort must be consistent with the title, which is the array key value of the detected data/function exportexcel ($data = ', $ Title= ', $filename = ' Excel ', $field =array()) {if (! $data | | |!is_array ($DATA)) return false;
if ($filename = = ") $filename = ' Excel ';
if ($field && Is_array ($field)) {//-only export the specified field and export $dateNew =array () in this order;
foreach ($data as $k => $v) {foreach ($field as $fkey) {$dateNew [$k] [$fkey]= $v [$fkey];
}} $data = $dateNew;
Import ("@.org.util.excelxml"),//Call export Excel class $xls = new Excelxml (' UTF-8 ', false, ' Sheet1 ');
$xls->addarray ($data, $title);
$xls->generatexml ($filename);
}