Phpspreadsheet 中文文档(四) 创建电子表格+档案格式
為了簡化PhpSpreadsheet概念:Spreadsheet該類表示您的工作簿。
通常,您可以通過以下兩種方式之一創(chuàng)建工作簿,即從電子表格文件加載工作簿,或手動創(chuàng)建工作簿。第三種方法雖然不那么常用,但它是克隆使用前面兩種方法之一創(chuàng)建的現(xiàn)有工作簿。
從文件加載工作簿
在“?讀取文件”文檔中完整描述了所支持的各種電子表格格式的詳細(xì)信息以及可將其讀入Spreadsheet對象的選項。
$inputFileName = './sampleData/example1.xls';/** Load $inputFileName to a Spreadsheet object **/ $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($inputFileName);創(chuàng)建一個新的工作簿
如果要創(chuàng)建一個新的工作簿,而不是從文件中加載一個工作簿,則只需將其實例化為一個新的電子表格對象。
/** Create a new Spreadsheet Object **/ $spreadsheet = new \PhpOffice\PhpSpreadsheet\Spreadsheet();始終將使用一個工作表創(chuàng)建一個新的工作簿。
從內(nèi)存中清除工作簿
PhpSpreadsheet對象包含循環(huán)引用(例如,工作簿鏈接到工作表,而工作表鏈接到其父工作簿),當(dāng)PHP嘗試從內(nèi)存中清除對象時unset()或在函數(shù)結(jié)束時嘗試從內(nèi)存中清除對象時,會導(dǎo)致問題他們在當(dāng)?shù)胤秶鷥?nèi)。其結(jié)果是“內(nèi)存泄漏”,它可以輕松使用大量PHP的有限內(nèi)存。
這只能手動解決:如果您需要取消設(shè)置工作簿,則還需要先“破壞”這些循環(huán)引用。PhpSpreadsheet提供了disconnectWorksheets()用于此目的的方法。
$spreadsheet->disconnectWorksheets(); unset($spreadsheet);檔案格式
盡管并非所有閱讀器都支持所有功能,但PhpSpreadsheet可以讀取許多不同的電子表格和文件格式。在功能交叉參考中檢查列表,該列表標(biāo)識哪些讀者支持哪些功能。
目前,PhpSpreadsheet支持以下文件類型進(jìn)行讀取:
Xls
Microsoft Excel?二進(jìn)制文件格式(BIFF5和BIFF8)是Microsoft Excel?在版本95和2003之間使用的二進(jìn)制文件格式。大多數(shù)電子表格程序都(在不同程度上)支持該格式。BIFF文件通常具有.xls擴(kuò)展名。描述該格式的文檔可以在線閱讀?或下載為PDF。
Xml
Microsoft Excel?2003包括稱為SpreadsheetML的文件格式的選項。該文件是一個壓縮的XML文檔。它不是很常見,但是支持其核心功能。該格式的文檔可在線閱讀,?但可悲的是其詳細(xì)信息很少。
Xlsx
Microsoft Excel?2007附帶了一種新的文件格式,即Microsoft Office Open XML SpreadsheetML,而Excel 2010通過其新功能(如迷你圖)進(jìn)一步擴(kuò)展了此功能。這些文件的擴(kuò)展名通常為.xlsx。此格式基于可擴(kuò)展標(biāo)記語言(XML)文件的壓縮集合。Microsoft Office Open XML SpreadsheetML主要在ECMA 376?和ISO 29500中進(jìn)行了標(biāo)準(zhǔn)化。
奧茲
aka Open Document Format(ODF)或OASIS,這是電子表格的OpenOffice.org XML文件格式。它包含一個zip歸檔文件,其中包括幾個組件,所有組件都是文本文件,其中大多數(shù)帶有可擴(kuò)展標(biāo)記語言(XML)中的標(biāo)記。這是OpenOffice.org Calc和StarCalc的標(biāo)準(zhǔn)文件格式,文件通常具有.ods擴(kuò)展名。文件格式的已發(fā)布規(guī)范可從OASIS開放辦公室XML格式技術(shù)委員會網(wǎng)頁獲得。其他信息可從OpenOffice.org XML文件格式網(wǎng)頁(OpenOffice.org項目的一部分)獲得。
Slk
這是Microsoft Multiplan符號鏈接交換(SYLK)文件格式。Multiplan是Microsoft Excel?的前身。文件通常具有.slk擴(kuò)展名。盡管不常見,但仍有一些應(yīng)用程序?qū)YLK文件作為跨平臺選項生成,因為(盡管僅限于單個工作表)它是一種易于實現(xiàn)的格式,并且支持一些基本數(shù)據(jù)和單元格格式設(shè)置(與CSV文件)。
字母數(shù)字
所述Gnumeric的文件格式?是由侏儒Gnumeric的電子表格應(yīng)用程序使用,并且通常是文件具有的擴(kuò)展.gnumeric。使用可擴(kuò)展標(biāo)記語言(XML)標(biāo)記存儲文件內(nèi)容,然后使用GNU項目的gzip壓縮庫壓縮文件。
中央電視臺
逗號分隔值(CSV)文件格式是文本格式文件的常見結(jié)構(gòu)化策略。在CSV文件中,文件中的每一行代表一行數(shù)據(jù),并且(在文件的每一行內(nèi))不同的數(shù)據(jù)字段(或列)之間用逗號(,)隔開。如果數(shù)據(jù)字段包含逗號,則應(yīng)將其括起來(通常用引號(")引起。有時\t,將制表符,管道符號(|)或分號(;)用作分隔符而不是逗號),盡管其他符號由于CSV是純文本格式,因此不支持任何數(shù)據(jù)格式設(shè)置選項。
“ CSV”不是一個單一的,定義明確的格式(盡管請參閱RFC 4180了解常用的一種定義)。實際上,術(shù)語“ CSV”是指以下任何文件:
- 是使用字符集(例如ASCII,Unicode,EBCDIC或Shift JIS)的純文本,
- 由記錄組成(通常每行一條記錄),
- 記錄分為由定界符(通常是單個保留字符,例如逗號,分號或制表符)分隔的字段,
- 每個記錄具有相同的字段順序。
在這些一般約束下,正在使用許多變體。因此,“ CSV”文件并非完全可移植。但是,變化很小,許多實現(xiàn)都允許用戶瀏覽文件(這是可行的,因為它是純文本),然后指定分隔符,引用規(guī)則等。
警告:?Microsoft Excel?將打開.csv文件,但是根據(jù)系統(tǒng)的區(qū)域設(shè)置,它可能期望使用分號代替逗號,而不是逗號,因為在某些語言中,逗號用作十進(jìn)制分隔符。同樣,許多區(qū)域版本的Excel將無法處理CSV文件中的Unicode字符。
HTML
超文本標(biāo)記語言(HTML)是用于創(chuàng)建網(wǎng)頁和其他可在Web瀏覽器中顯示的信息的主要標(biāo)記語言。文件通常具有.html或.htm擴(kuò)展名。HTML標(biāo)記提供了一種通過表示文本的結(jié)構(gòu)語義(例如標(biāo)題,段落,列表,鏈接,引號和其他項目)來創(chuàng)建結(jié)構(gòu)化文檔的方法。自1996年以來,萬維網(wǎng)聯(lián)盟(W3C)一直在維護(hù)HTML規(guī)范,并由商業(yè)軟件供應(yīng)商提供意見。但是,在2000年,HTML也成為國際標(biāo)準(zhǔn)(ISO / IEC 15445:2000)。HTML 4.01于1999年底發(fā)布,隨后的勘誤發(fā)布到2001年。2004年,Web超文本應(yīng)用技術(shù)工作組(WHATWG)開始了HTML5的開發(fā),該工作組于2008年與W3C聯(lián)合發(fā)布。
總結(jié)
以上是生活随笔為你收集整理的Phpspreadsheet 中文文档(四) 创建电子表格+档案格式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 流星灯C语言程序,(18)改进led驱动
- 下一篇: f(n)是统计从1到n出现的1的次数的总