網路閒晃,意外發現。
Add advanced interaction controls to your HTML tables the free & easy way
網路閒晃,意外發現。
Add advanced interaction controls to your HTML tables the free & easy way
參考網址:https://fannys23.pixnet.net/blog/post/48239316
配合 PHP 8 停止支援 __autoload(),改用 sql_autoloaod_register()
配合 PHP 8 停用 each(),改用 foreach()
錯誤訊息:PHP Fatal error: Uncaught Error: Call to undefined function each()
while(list(, $line) = @each($lines)) {
改寫為:
foreach ($lines as $line) {
在 PHP 8 要對 PHPExcel 做的調整:
} elseif ($pValue[0] === '=' && strlen($pValue) > 1) {
改為:
} elseif (0 === strpos($pValue, '=') && strlen($pValue) > 1) {
https://forum.gamer.com.tw/C.php?bsn=60292&snA=8686
解決count()的錯誤
原本在PHP7能運行的count()程式段,在PHP8會報error
Exception: count(): Argument #1 ($value) must be of type Countable|array, null given
報錯原因
因為count()在PHP8需要是array或是countable,否則會報TypeError
在PHP7時期只會跳warning
https://www.php.net/manual/en/function.count.php
解決方案
第一種:先作宣告
於第425行後加上以下兩條
$new_Timestamp = [];
$new_TimestampTitle = [];
第二種:加上is_countable()
將434的if(count($new_TimestampTitle)>0){
改為if (is_countable($new_TimestampTitle) && count($new_TimestampTitle) > 0) {
調整sport/ns到php8.1.2(ubuntu 22.04預設php版本)
adodb升級至v5.22.7
include/config.php 修正
//Smarty 偵錯
define('DEBUG' , 'false') ;
比較麻煩的是這個錯誤
Fatal error: Uncaught Error: Undefined constant "play_group_level_id" in /var/www/html/ns/sum/sum_item.php:20 Stack trace: #0 {main} thrown in /var/www/html/ns/sum/sum_item.php on line 20
陣列的索引值如果是文字則必需有''包住,之前的版本只是會提出警告,php8直接給Fatal error
例如:$sys_conf[play_place] 必需改為$sys_conf['play_place']
用sublime text正則表示式找陣列,以「$」開頭,以「[」結束的字串
\$(\w+)\[
\w matches any word character (equivalent to [a-zA-Z0-9_])
\$(\w+)\[(\w+)]
PHPExcel套件最後一版是2015年寫的,目前已不再更新。
https://github.com/PHPOffice/PHPExcel
為了因應越來越複雜的Excel版本,得找找有沒有可以替代的套件。
這是PHPExcel的後續套件PHPSpreadSheet
https://github.com/PHPOffice/PhpSpreadsheet/
徐嘉裕(Neil Hsu)的工作心得網誌!
唯一比較麻煩的是使用PhpSpreadsheet要先佈署composer,如果沒佈署composer是沒辦法使用的,還好官方有釋出已經設定好的phpoffice套件可以直接引入使用,省了很多麻煩
https://neohsuxoops.blogspot.com/2020/09/phpspreadsheetphpexcel-xoops.html
PhpSpreadsheet套件下載
https://drive.google.com/file/d/1jw73diWVjbcr1ycY-gtqM2cGfpLp1zS_/view?usp=sharing
下載回來後解壓縮把phpoffice跟PhpSpreadsheet丟到class資料夾中,未來如需更新PhpSpreadsheet可到官網下載最新版覆蓋即可
使用說明https://phpspreadsheet.readthedocs.io/en/latest/
read 範例(php 7.4)( 在php5.6測試有問題)
<?php
include_once 'class/phpoffice/vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\IOFactory;
//require __DIR__ . '/../Header.php';
//$inputFileName = __DIR__ . '/sampleData/example1.xls';
//$inputFileName = __DIR__ . '/good-example.xlsx';
$inputFileName = __DIR__ . '/1103289.xls';
//$helper->log('Loading file ' . pathinfo($inputFileName, PATHINFO_BASENAME) . ' using IOFactory to identify the format');
$spreadsheet = IOFactory::load($inputFileName);
$sheetData = $spreadsheet->getActiveSheet()->toArray(null, true, true, true);
//$helper->displayGrid($sheetData);
print_r($sheetData);
參考網址:https://kkplay3c.net/windows-installs-hyperv/
win11 家用版是不支援hyper-v的,得自己裝。
pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
存成cmd,以系統管理員身分執行。
裝好後執行Hyper-v管理員
相關功能:開啟或關閉Windows功能
參考網址:https://www.allion.com.tw/tech_cable_usb4-tbt4_compare/
USB4 和 Thunderbolt™ 4功能強大且便利性高,兩者皆以USB Type-C作為統一介面,都只需要一條線便能做到畫面顯示、充電、資料傳輸等多項功能。
不論是從外觀還是功能,USB4 和Thunderbolt™4都有許多的相似之處,想要分辦出兩者之間的差別確實也沒那麼容易。
參考網址:https://chci.com.tw/what-is-intel-core/
Intel Core Ultra 5 125H(14核心 18執行緒)
https://www.mobile01.com/topicdetail.php?f=296&t=6889972
H 系列採用最高 6P+8E+2 LP E 核心配置,最大加速時脈為 5.0 GHz,快取記憶體配置則是 24MB、顯示核心則是搭載 Arc 顯示晶片,具備 8 核心/7 核心配置,最大運作功耗則是 115W。另外在明年第一季還會有一款更高階的 Core Ultra 9 185H 處理器登場,最高時脈可拉到 5.1 GHz。
ppa:ondrej/php 已不支援ubuntu 16.04 目前(2024/12/04)可以在ppa:tomvlk/php-archive找到相關的deb
這些deb應該也是ondrej整理的
add-apt-repository ppa:tomvlk/php-archive
擔心以後這個資源也會不見,所以就想個辦法把這些deb備份下來
在這個頁面可以看到檔案列表
http://ppa.launchpadcontent.net/tomvlk/php-archive/ubuntu/pool/main/p/php5.6/
php5.6_5.6.40-6+ubuntu16.04.1+deb.sury.org+3_all.deb 2019-04-26 12:33 257K
php5.6_5.6.40-6+ubuntu18.04.1+deb.sury.org+3_all.deb 2019-04-26 12:37 257K
php5.6_5.6.40-6+ubuntu19.04.1+deb.sury.org+3_all.deb 2019-04-26 12:40 257K
從列表中可以發現它可以支援ubuntu 16.04 、18.04、19.04
我們用wget把這個資源砍下來備份,以備不時之需。
wget -mpkP ./ http://ppa.launchpadcontent.net/tomvlk/php-archive/ubuntu/pool/main/p/php5.6/
可以運用以下連結
http://163.26.179.2/php56/ppa.launchpadcontent.net/tomvlk/php-archive/ubuntu/pool/main/p/index.html
相關貼文:[php]ppa 在lubuntu 16.04 支援 php5.6
http://sp.idv.tw/wp/index.php/2023/03/21/1786/
參考網址:靖技場 https://www.jinnsblog.com/2020/11/linux-ubuntu-offline-install-package.html
預設使用 apt-get 在安裝套件時,其下載的deb檔案會存放在 /var/cache/apt/archives 目錄下。
建議可以把此目錄下不必要的檔案先刪除,指令如下:
apt-get clean
apt-get install --download-only 套件名稱 (格式)
dpkg -i *.deb
download-only 和 download 有什麼不同?
–download-only:可以簡化成 -d,即 #apt-get install --download-only 等於 apt-get install -d 該指令會把下載的.deb檔存放至「/var/cache/apt/archives」目錄下,而且會把相依性套件一併下載 download:範例指令如下 #apt-get download 套件名稱 該指令下載的.deb檔會存放在目前的目錄,而且不會把相依性套件一起下載
如果系統中已經安裝了該套件,則download-only不會下載該deb檔案
參考網址:https://blog.csdn.net/yaq_30401/article/details/132853528
https://blog.csdn.net/yaq_30401/article/details/132853528 wsl --install wsl -l wsl -l --running wsl --export Ubuntu-16.04 c:\wsl-Ubuntu-16.04.tar 還原 wsl --import Ubuntu-16.04 "C:\Program Files\WSL" F:\backup_sfg_1131118\wsl-Ubuntu-16.04.tar wsl --distribution Ubuntu-16.04 wsl --install 會安裝一個預設的Ubuntu系統,用以下指令移除 wsl --unregister Ubuntu
選項: –vhd 指定發佈應匯出為 .vhdx 檔案。
可以用wsl --help 查看help
在 Windows 子系統 Linux 版中管理發佈的引數:
--export <Distro> <FileName> [Options]
將發佈匯出至 tar 檔案。
檔案名稱可以是 - 代表標準輸出。
選項:
--vhd
指定發佈應匯出為 .vhdx 檔案。
--import <Distro> <InstallLocation> <FileName> [Options]
將指定的 tar 檔案做為新的發佈。
檔案名稱可以是 - 代表標準輸入。
選項:
--version <Version>
指定要用於新發佈的版本。
--vhd
指定提供的檔案是 .vhdx 檔案,而非 tar 檔案。
此作業會複製指定安裝位置的 .vhdx 檔案。
--import-in-place <Distro> <FileName>
將指定的 .vhdx 檔案匯入為新的發佈。
此虛擬硬碟必須使用 ext4 檔案系統類型進行格式化。
--list, -l [Options]
列出發佈。
選項:
--all
列出所有發佈,包括
的發佈
目前正在安裝或卸載。
--running
只列出目前正在執行的發佈。
--quiet, -q
只顯示發佈名稱。
--verbose, -v
顯示所有發佈的詳細資訊。
--online, -o
顯示可用發佈的清單,以使用 'wsl.exe --install' 安裝。
--set-default, -s <Distro>
將發佈設定為預設。
--set-version <Distro> <Version>
變更指定發佈的版本。
--terminate, -t <Distro>
終止指定的發佈。
--unregister <Distro>
取消註冊發佈並刪除根檔案系統。
參考網址:https://www.kocpc.com.tw/archives/437626
(1) 打開「設定」應用程式(快捷組合鍵:Win + I),或是直接在工作列上點滑鼠右鍵後點擊「工作列設定」。
(2) 點選側邊欄中的「個人化」,選擇裡面的「工作列這一項」。