


PHP chain operation output excel (csv), chain csv_PHP tutorial
PHP chain operation outputs excel (csv), chained csv
At work, we often encounter product operations that ask us to export some simple and relatively standardized data. If so, A simple method can be used that is much simpler. Below is a method class of mine that outputs simple excel (csv), using chain operations. Speaking of chain operations, they may be often used in jquery. Do you also feel that chain operations are very comfortable to use? We also implement down-chain operations in this class.
In fact, the chain operation is very simple, that is, at the end of the previous class method, an object of this class ($this) is returned and provided to the next method call.
<?<span>php </span><span>class</span><span> Array2csv{ </span><span>/*</span><span> *@var string $ext 扩展名 </span><span>*/</span> <span>private</span> <span>$ext</span> = 'csv'<span>; </span><span>/*</span><span>* * @desc构造方法 * @param string $filename 要输出的文件名 * @param string $ext 扩展名 </span><span>*/</span> <span>public</span> <span>function</span> __construct(<span>$filename</span>,<span>$ext</span>=<span>null</span><span>){ </span><span>ob_start</span><span>(); </span><span>header</span>("Content-type: text/html;charset=utf-8"<span>); </span><span>header</span>("Content-type: application/x-csv"<span>); </span><span>if</span>(PHP_SAPI == 'cli') <span>echo</span> "CLI模式下不能导出csv文件\r"<span>; </span><span>$this</span>->ext = <span>$ext</span> === <span>null</span> ? <span>$this</span>->ext : <span>$ext</span><span>; </span><span>header</span>("Content-Disposition: attachment;filename=".<span>$filename</span>.".".<span>$this</span>-><span>ext); </span><span>ob_flush</span><span>(); </span><span>return</span> <span>$this</span><span>; } </span><span>/*</span><span>* * @desc 打印excel标题 * @param array $title 要输出的标题行 * @param object Array2csv 对象本身 </span><span>*/</span> <span>public</span> <span>function</span> title(<span>$title</span><span>){ </span><span>$title</span> = <span>implode</span>(",", <span>$title</span><span>); </span><span>echo</span> <span>$title</span>."\n"<span>; </span><span>return</span> <span>$this</span><span>; } </span><span>/*</span><span>* * @desc 打印一行excel内容 * @param array $body 要输出的内容 * @param object Array2csv 对象本身 </span><span>*/</span> <span>public</span> <span>function</span> body(<span>$body</span><span>){ </span><span>if</span>(!<span>is_array</span>(<span>$body</span>) || <span>empty</span>(<span>$body</span><span>)) { </span><span>return</span> <span>false</span><span>; } </span><span>$body</span> = <span>implode</span>(",", <span>$body</span><span>); </span><span>echo</span> <span>$body</span>."\n"<span>; </span><span>return</span> <span>$this</span><span>; } </span><span>/*</span><span>* * @desc 打印多行excel内容 * @param array $bodyArr 要输出的多行内容 * @param object Array2csv 对象本身 </span><span>*/</span> <span>public</span> <span>function</span> multiBody(<span>$bodyArr</span><span>){ </span><span>if</span>(!<span>is_array</span>(<span>$bodyArr</span>) || <span>empty</span>(<span>$bodyArr</span>)) <span>return</span> <span>false</span><span>; </span><span>foreach</span> (<span>$bodyArr</span> <span>as</span> <span>$key</span> => <span>$value</span><span>) { </span><span>if</span>(<span>is_array</span>(<span>$value</span><span>)){ </span><span>$value</span> = <span>implode</span>(",", <span>$value</span><span>); </span><span>echo</span> <span>$value</span>."\n"<span>; } } </span><span>return</span> <span>$this</span><span>; } } </span><span>$test</span> = <span>new</span> Array2csv('test'<span>); </span><span>$arr</span> = <span>array</span><span>( </span><span>array</span>('luluyrt@163.com','奔跑的Man1','奔跑的userman'), <span>array</span>('luluyrt@163.com','奔跑的Man2','奔跑的userman'), <span>array</span>('luluyrt@163.com','奔跑的Man3','奔跑的userman'), <span>array</span>('luluyrt@163.com','奔跑的Man4','奔跑的userman'), <span>array</span>('luluyrt@163.com','奔跑的Man5','奔跑的userman'), <span>array</span>('luluyrt@163.com','奔跑的Man6','奔跑的userman'<span>) ); </span><span>$test</span>->title(<span>array</span>('测试','呵呵','哈哈'))->body(<span>array</span>('100,sadkl','sdsas','sdvsvdd分'))->multiBody(<span>$arr</span>);
The output csv is as shown below:
$link = mysqli_connect($host, $user, $passwd, $db);
mysqli_query($link, "set names utf8");
Encoding conversion can be used for normal display. The following is my database information and the effect before and after encoding:
Database information
Comparison before and after setting up database encoding
send Me~

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Laravel is one of the more outstanding PHP frameworks in the industry. Its powerful functions and easy-to-use API make it very popular among developers. In actual development, we often need to import and export data, and CSV, as a widely used data format, has also become one of the commonly used import and export formats. This article will introduce how to use LaravelExcel extension to import and export CSV files. 1. Install LaravelExcel First, we need

This article will explain in detail how PHP formats rows into CSV and writes file pointers. I think it is quite practical, so I share it with you as a reference. I hope you can gain something after reading this article. Format rows to CSV and write to file pointer Step 1: Open file pointer $file=fopen("path/to/file.csv","w"); Step 2: Convert rows to CSV string using fputcsv( ) function converts rows to CSV strings. The function accepts the following parameters: $file: file pointer $fields: CSV fields as an array $delimiter: field delimiter (optional) $enclosure: field quotes (

How to convert json string to csv format in php: 1. Create a php sample file; 2. Convert the JSON string to a PHP array or object; 3. Create a file handle and open a CSV file for writing; 4. Write the header row and data row in the CSV file; 5. Write the data row into the CSV file and use comma separators between fields, close the file handle and complete the conversion.

Convert XML data in Python to CSV format XML (ExtensibleMarkupLanguage) is an extensible markup language commonly used for data storage and transmission. CSV (CommaSeparatedValues) is a comma-delimited text file format commonly used for data import and export. When processing data, sometimes it is necessary to convert XML data to CSV format for easy analysis and processing. Python is a powerful

Java is a widely used programming language, and developers often need to deal with various data formats. CSV (Comma-SeparatedValues, comma-separated values) is a common data format widely used in data exchange and storage. In Java, we can use the OpenCSV library to read and write CSV files. OpenCSV is an easy-to-use open source library that provides a convenient API to process CSV data. This article explains how to

Solution to the problem of garbled csv imported into PHP: 1. Construct a parsing function "function tb_str_getcsv($string, $delimiter=',', $enclosure='"') {...}"; 2. Read the file into a variable ;3. Remove the BOM header through "substr($s,2)".

Overview of the main knowledge points a.SwingNode class: Encapsulate Javaswing components into a JavaFX Node, so that JavaSwing can be nested with JavaFX. JavaSwing is ugly, but easy to operate. JavaFX table components (TableView, etc.) are a bit complicated, so Choose nested JavaSwing to use, just be ugly b.javacsv-2.0.jar: used to read csv files through file addresses, and can perform a series of operations. Although it will no longer be updated after 2008, it can operate a csv file It's enough. c.FileChoose class: a file selector for JavaFX that can

csv to vcf through the steps of opening CSV files, formatting CSV files, exporting CSV files, adjusting VCF file format and saving VCF files. Detailed introduction: 1. Open the CSV file, you can use Microsoft Excel, Google Sheets or any other spreadsheet program to open the CSV file; 2. Format the CSV file to ensure that the column headers of the CSV file are clear; 3. Export the CSV file, etc.
