發表文章

目前顯示的是有「charset」標籤的文章

PHPlot 中文亂碼

圖片
 現階段比較常用的繪圖函式大多是 javascript 為主流,有很多,也不勝枚舉,D3.js、C3.js、Chart.js ...,遙想(抬頭)只有 GD 可用的年代,回頭用這函式老而不殘,實在是因為抓取資料的 PHP 程式運作順暢,想說就直接用 PHP 把圖做一做,哪知道,只怕是更折騰,這次又碰到老朋友,俗稱「亂碼」的編碼問題… 工作環境:   Windows 10 home   php     phplot     workplace/font/fireflysung.ttf 症狀: SetFontTTF: Can't find TrueType font fireflysung.ttf 整片白的一張圖 試了半天,原來只能設定絕對路徑,不能設相對路徑 範例: //all these below WORKS with setting of absolute path 用絕對路徑、絕對路徑、絕對路徑  $plot -> SetTTFPath ( "D: \\ workplace \\ font \\ " );     //works $plot -> SetDefaultTTFont ( 'NotoSerifCJKtc-Black.otf' );   //works $plot -> SetTitle ( "符合與其他可能" );   //works  //these also works with correct path setting //using ttf font with correct path setting //$plot->SetDefaultTTFont('fireflysung.ttf');  //works //event using otf font works...

tinker 中文字為亂碼

 亂碼這事,事小,但是像那苦纏不捨的蒼蠅,不理牠,牠就一直在旁邊飛著、吵著。 工作環境:   Laravel 7   Database Collation: utf8mb4_unicode_ci   tinker $php artisan tinker >>>  \App\Models\Model_Name::all() => 列出所有的資料,顯示的部份沒有問題,正確地顯示中文內容 >>> DB::table('table_name')->get(); => 中文內容無法正確地顯示 >>>  DB::table('table_name')->charset = 'utf8mb4'; >>>  DB::table('table_name')->collation = 'utf8mb4_unicode_ci'; 再次  >>> DB::table('table_name')->get();  => 正確地顯示中文內容  重開終端機也可以正確地顯示中文內容   -------------------- FAIL  --------------------  DB::table('table_name')->charset('utf8mb4')  DB::table('table_name')->collate('utf8mb4_unicode_ci')  DB::table('table_name')->collations('utf8mb4_unicode_ci') -------------------- FAIL  --------------------   收工!