<p><img src="http://img.80zx.com/ueditor/image/202311/16991785182ec4fd.png" title="5dca2ecc-6199-4e09-bd6f-4b3c1a3cb7d6" alt="5dca2ecc-6199-4e09-bd6f-4b3c1a3cb7d6"></p><p>虽然可以打开看到里面的内容,但是给人的感觉就是很不爽,于是分析下代码找到了解决方法</p><p>找到文件public/assets/libs/bootstrap-table/dist/extensions/export/bootstrap-table-export.js</p><p>大概在97行</p><p>把代码</p><pre style="background-color:#2b2b2b;color:#a9b7c6;font-family:'JetBrains Mono',monospace;font-size:9.8pt;"><span style="color:#9876aa;font-weight:bold;font-style:italic;">require</span>([<span style="color:#6a8759;">'tableexport'</span>]<span style="color:#cc7832;">, function </span>() {<br> that.<span style="color:#9876aa;">$el</span>.<span style="color:#ffc66d;">tableExport</span>($.<span style="color:#ffc66d;">extend</span>({}<span style="color:#cc7832;">, </span>that.<span style="color:#9876aa;">options</span>.<span style="color:#9876aa;">exportOptions</span><span style="color:#cc7832;">, </span>{<br> type: type<span style="color:#cc7832;">,<br></span><span style="color:#cc7832;"> </span><span style="color:#9876aa;">escape</span>: <span style="color:#cc7832;">false<br></span><span style="color:#cc7832;"> </span>}))<span style="color:#cc7832;">;<br></span>})<span style="color:#cc7832;">;</span></pre><p>替换成</p><pre style="background-color:#2b2b2b;color:#a9b7c6;font-family:'JetBrains Mono',monospace;font-size:9.8pt;"><span style="color:#cc7832;">if</span>(type == <span style="color:#6a8759;">'excel'</span>){<br> <span style="color:#9876aa;font-weight:bold;font-style:italic;">require</span>([<span style="color:#6a8759;">'tableexport'</span><span style="color:#cc7832;">,</span><span style="color:#6a8759;">'/assets/libs/tableExport.jquery.plugin/libs/js-xlsx/xlsx.core.min.js'</span>]<span style="color:#cc7832;">, function </span>() {<br> that.<span style="color:#9876aa;">$el</span>.<span style="color:#ffc66d;">tableExport</span>($.<span style="color:#ffc66d;">extend</span>({}<span style="color:#cc7832;">, </span>that.<span style="color:#9876aa;">options</span>.<span style="color:#9876aa;">exportOptions</span><span style="color:#cc7832;">, </span>{<br> <span style="color:#9876aa;">type</span>:<span style="color:#6a8759;">'excel'</span><span style="color:#cc7832;">,<br></span><span style="color:#cc7832;"> </span><span style="color:#9876aa;">mso</span>: { <span style="color:#9876aa;">fileFormat</span>: <span style="color:#6a8759;">'xlsx' </span>}<br> }))<span style="color:#cc7832;">;<br></span><span style="color:#cc7832;"> </span>})<span style="color:#cc7832;">;<br></span>}<span style="color:#cc7832;">else</span>{<br> <span style="color:#9876aa;font-weight:bold;font-style:italic;">require</span>([<span style="color:#6a8759;">'tableexport'</span>]<span style="color:#cc7832;">, function </span>() {<br> that.<span style="color:#9876aa;">$el</span>.<span style="color:#ffc66d;">tableExport</span>($.<span style="color:#ffc66d;">extend</span>({}<span style="color:#cc7832;">, </span>that.<span style="color:#9876aa;">options</span>.<span style="color:#9876aa;">exportOptions</span><span style="color:#cc7832;">, </span>{<br> type: type<span style="color:#cc7832;">,<br></span><span style="color:#cc7832;"> </span><span style="color:#9876aa;">escape</span>: <span style="color:#cc7832;">false<br></span><span style="color:#cc7832;"> </span>}))<span style="color:#cc7832;">;<br></span><span style="color:#cc7832;"> </span>})<span style="color:#cc7832;">;<br></span>}</pre><p>这里需要引入文件</p><pre style="background-color:#2b2b2b;color:#a9b7c6;font-family:'JetBrains Mono',monospace;font-size:9.8pt;"><span style="color:#6a8759;">/assets/libs/tableExport.jquery.plugin/libs/js-xlsx/xlsx.core.min.js</span></pre><p>所以可以去<a href="https://github.com/hhurz/tableExport.jquery.plugin下载引入">https://github.com/hhurz/tableExport.jquery.plugin下载引入</a> </p><p>后端引入的是压缩包文件,所以这里需要把文件<span style="text-wrap: wrap;">public/assets/libs/bootstrap-table/dist/extensions/export/bootstrap-table-export.js压缩成<span style="text-wrap: wrap;">public/assets/libs/bootstrap-table/dist/extensions/export/bootstrap-table-export.min.js文件</span></span></p><p><span style="text-wrap: wrap;"><span style="text-wrap: wrap;">最后需要在网站根路径命令窗口下执行php think min -m all -r all</span></span></p><p><span style="text-wrap: wrap;"><span style="text-wrap: wrap;">针对fastadmin版本</span></span><span style="color: rgb(106, 171, 115); background-color: rgb(245, 245, 245); font-family: "JetBrains Mono", monospace; font-size: 9.8pt;">1.6.1.20250430 </span>的写法如下</p><div style="background-color:#1e1f22;color:#bcbec4"><pre style="font-family:'JetBrains Mono',monospace;font-size:9.8pt;"><span style="color:#c77dba;font-style:italic;">require</span>([<span style="color:#6aab73;">'tableexport'</span>,<span style="color:#6aab73;">'/assets/libs/tableExport.jquery.plugin/libs/js-xlsx/xlsx.core.min.js'</span>], <span style="color:#cf8e6d;">function </span>() {<br> <span style="color:#cf8e6d;">var </span><span style="color:#a9b7c6;">type </span>= $(<span style="color:#a9b7c6;">li</span>).<span style="color:#56a8f5;">data</span>(<span style="color:#6aab73;">'type'</span>),<span style="color:#a9b7c6;">doExport </span>;<br> <span style="color:#c77dba;font-style:italic;">console</span>.<span style="color:#56a8f5;">log</span>(<span style="color:#a9b7c6;">type</span>);<br> <span style="color:#cf8e6d;">if</span>(<span style="color:#a9b7c6;">type </span>== <span style="color:#6aab73;">'excel'</span>){<br> <span style="color:#a9b7c6;">doExport </span>= <span style="color:#cf8e6d;">function </span>() {<br> <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">$el</span>.<span style="color:#56a8f5;">tableExport</span>($.<span style="color:#56a8f5;">extend</span>({}, <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">exportOptions</span>, {<br> <span style="color:#c77dbb;">type</span>:<span style="color:#6aab73;">'excel'</span>,<br> <span style="color:#c77dbb;">mso</span>: { <span style="color:#c77dbb;">fileFormat</span>: <span style="color:#6aab73;">'xlsx' </span>}<br> }));<br> };<br> }<span style="color:#cf8e6d;">else</span>{<br> <span style="color:#a9b7c6;">doExport </span>= <span style="color:#cf8e6d;">function </span>() {<br> <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">$el</span>.<span style="color:#56a8f5;">tableExport</span>($.<span style="color:#56a8f5;">extend</span>({}, <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">exportOptions</span>, {<br> <span style="color:#c77dbb;">type</span>: <span style="color:#a9b7c6;">type</span>,<br> <span style="color:#c77dbb;">escape</span>: <span style="color:#cf8e6d;">false<br></span><span style="color:#cf8e6d;"> </span>}));<br> };<br> }<br> <span style="color:#c77dba;font-style:italic;">console</span>.<span style="color:#56a8f5;">log</span>(<span style="color:#a9b7c6;">doExport</span>);<br><br> <span style="color:#cf8e6d;">if </span>(<span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">exportDataType </span>=== <span style="color:#6aab73;">'all' </span>&& <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">pagination</span>) {<br> <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">$el</span>.<span style="color:#56a8f5;">one</span>(<span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">sidePagination </span>=== <span style="color:#6aab73;">'server' </span>? <span style="color:#6aab73;">'post-body.bs.table' </span>: <span style="color:#6aab73;">'page-change.bs.table'</span>, <span style="color:#cf8e6d;">function </span>() {<br> <span style="color:#a9b7c6;">doExport</span>();<br> <span style="color:#a9b7c6;">that</span>.<span style="color:#56a8f5;">togglePagination</span>();<br> });<br> <span style="color:#a9b7c6;">that</span>.<span style="color:#56a8f5;">togglePagination</span>();<br> } <span style="color:#cf8e6d;">else if </span>(<span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">exportDataType </span>=== <span style="color:#6aab73;">'selected'</span>) {<br> <span style="color:#cf8e6d;">var </span><span style="color:#a9b7c6;">data </span>= <span style="color:#a9b7c6;">that</span>.<span style="color:#56a8f5;">getData</span>(),<br> <span style="color:#a9b7c6;">selectedData </span>= <span style="color:#a9b7c6;">that</span>.<span style="color:#56a8f5;">getAllSelections</span>();<br><br> <span style="color:#7a7e85;">// Quick fix #2220<br></span><span style="color:#7a7e85;"> </span><span style="color:#cf8e6d;">if </span>(<span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">sidePagination </span>=== <span style="color:#6aab73;">'server'</span>) {<br> <span style="color:#a9b7c6;">data </span>= {<span style="color:#c77dbb;">total</span>: <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">totalRows</span>};<br> <span style="color:#a9b7c6;">data</span>[<span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">dataField</span>] = <span style="color:#a9b7c6;">that</span>.<span style="color:#56a8f5;">getData</span>();<br> <span style="color:#cf8e6d;">var </span><span style="color:#a9b7c6;">Table </span>= <span style="color:#cf8e6d;">typeof </span><span style="color:#c77dba;font-style:italic;">require </span>=== <span style="color:#6aab73;">'function' </span>? <span style="color:#c77dba;font-style:italic;">require</span>(<span style="color:#6aab73;">'table'</span>) : <span style="color:#cf8e6d;">null</span>;<br> <span style="color:#a9b7c6;">selectedData </span>= {<span style="color:#c77dbb;">total</span>: <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">totalRows</span>};<br> <span style="color:#a9b7c6;">selectedData</span>[<span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">dataField</span>] = <span style="color:#a9b7c6;">Table </span>&& <span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">options</span>.<span style="color:#c77dbb;">maintainSelected </span>? <span style="color:#a9b7c6;">Table</span>.<span style="color:#c77dbb;">api</span>.<span style="color:#56a8f5;">selecteddata</span>(<span style="color:#a9b7c6;">that</span>.<span style="color:#c77dbb;">$el</span>) : <span style="color:#a9b7c6;">that</span>.<span style="color:#56a8f5;">getAllSelections</span>();<br> }<br><br> <span style="color:#a9b7c6;">that</span>.<span style="color:#56a8f5;">load</span>(<span style="color:#a9b7c6;">selectedData</span>);<br> <span style="color:#a9b7c6;">doExport</span>();<br> <span style="color:#a9b7c6;">that</span>.<span style="color:#56a8f5;">load</span>(<span style="color:#a9b7c6;">data</span>);<br> } <span style="color:#cf8e6d;">else </span>{<br> <span style="color:#a9b7c6;">doExport</span>();<br> }<br>});</pre></div>
可以使用 PHP 内置的 fputcsv() 函数将 2 维数组写入 CSV 文件,同时设置文件编码为 UTF-8 以避免中文乱码。示例代码如下:// 创建一个包含中文的 2 维数组$data = a...
具体上代码:// 导入 public function import(){ $file = $this->request->request('file'); ...
// $val = $currentSheet->getCellByColumnAndRow($currentColumn, $currentRow)->getValue();// ...
在不进行特殊设置的情况下,phpExcel将读取的单元格信息保存在内存中,我们可以通过PHPExcel_Settings::setCacheStorageMethod()来设置不同的缓存方式,已达到降...