Laravel 5.2 實現前後台雙重認證:設定 Guard、Provider 與獨立登入介面
前言 Laravel 5.2 內建多重認證機制,可輕鬆建立獨立的前台 (用戶) 與後台 (管理員) 登入系統。本文完整記錄設定步驟。 1. 前台認證 (預設)
PHP 圖片裁剪類 ImageCrop:四種模式支援強制填滿、等比縮放、保留原圖與實際尺寸輸出
前言 ImageCrop 類別提供四種裁剪模式,滿足不同排版需求:強制填滿、等比不放大、保留原圖留白、實際尺寸輸出。支援 JPG/PNG/GIF 及透明底輸出。
PHP 實作 10 進位與 36 進位互轉:自訂字元集合編碼解碼函式
前言 36 進位 (0-9, A-Z) 常用於短網址、邀請碼、訂單號產生。本文提供不依賴 base_convert (受限 32 位整數) 的純 PHP 實作。
PHP 取得當前完整 URL 的多種方式:$_SERVER 變數組合與 JS 對應方法
前言 在 PHP 中組合完整 URL 是常見需求,但 $_SERVER 變數眾多,易混淆。本文整理各變數用途與組合方式,並對照 JavaScript 取得方式。
PHP 接收二進制資料流並轉存為圖片檔案:imageUpload 類別完整實作
前言 非表單上傳 (如 App 直接 POST 二進制流、WebSocket 傳圖) 時,$_FILES 無法接收。需讀取 php://input 或 $GLO
ThinkPHP 模板自訂 msubstr 函式:支援 UTF-8/GBK 中文字串截取並自動加省略號
前言 ThinkPHP 模板預設無多位元組安全的截取函式。本文提供 msubstr 函式,支援 UTF-8、GBK、GB2312、BIG5,並可選擇是否加上省略
PHP 透過 PDO 呼叫 Oracle 存儲過程:IN/OUT 參數綁定完整範例
前言 Oracle 存儲過程常用於封裝複雜業務邏輯。PHP 使用 PDO 呼叫時,需正確綁定輸入/輸出參數並指定資料型別與長度。 Oracle 端定義 CRE
解決微信內嵌頁面 PHP 表單重複提交:單次 Token 驗證機制
問題背景 微信內建瀏覽器訪問 PHP 頁面時,表單偶爾會自動提交兩次,導致業務邏輯重複執行 (如重複扣款、重複寫入)。原因未明,疑為微信預載或重試機制。 解決
Yii2 GridView 進階用法總覽:欄位格式化、圖片顯示、關聯資料、動作按鈕與列表搜尋
前言 GridView 是 Yii2 後台列表開發的核心元件。本文匯總實務中常見的欄位型態設定技巧。 完整欄位配置範例 function($url,$mode
Yii2 實作分頁與搜尋分頁:Pagination、ActiveDataProvider 與 GridView 完整範例
前言 Yii2 提供 Pagination、ActiveDataProvider、GridView 三大元件支援分頁與搜尋。本文從模型關聯、搜尋模型建立到控制器
解決 Yii 框架登入 Session 偶發遺失:註銷 CWebUser::regenerateID() 即可
問題現象 Yii 專案中使用者登入後,Session 偶爾會遺失,導致重新導向登入頁,但有時又能正常登入,極難重現。 根因分析 CWebUser 在登入流程中
Yii CJuiDialog 實作編輯個人資料彈出表單完整範例
前言 在 CJuiDialog 中嵌入編輯表單是常見需求。本文提供包含隱藏欄位、文字輸入框與自訂按鈕事件的完整視圖程式碼。 完整視圖程式碼 endWidget
Yii Framework CJuiDialog 彈出視窗元件完整參數說明與使用範例
前言 CJuiDialog 封裝 jQuery UI Dialog,提供彈出視窗功能。位於 zii.widgets.jui。本文說明常用屬性與完整使用範例。
PHP ValidateCode 驗證碼類別原始碼深度解析:從建構子到干擾線產生
前言 ValidateCode 是一個基於 GD 庫的經典驗證碼類別,支援 TTF 字型、隨機背景色、文字旋轉、干擾線與雜點。本文逐步拆解其核心方法。 類別屬
PHP 圖片處理類:等比縮略圖生成與右下角水印添加完整實作
前言 封裝一個 Image 類別,支援四種縮放模式、自動計算縮放比率避免變形、依圖片大小縮放水印並置於右下角,支援 JPG/PNG/GIF 輸出。 縮放比率演
PHP 使用 preg_match 以正則表達式驗證 IPv4 位址格式
前言 驗證 IPv4 位址 (0.0.0.0 ~ 255.255.255.255) 是常見需求。本文提供嚴格的正則表達式並封裝為函式。 正則表達式解析 $pa
PHP 陣列過濾技巧:使用 array_filter 移除空值或指定值的元素
前言 處理表單資料或 API 回傳時,常需移除陣列中的空字串、null、false 等「假值」。array_filter() 搭配回呼函式是最簡潔的做法。 基