Toggle main menu visibility
下載輕鬆架
套件下載
使用手冊
發問討論
網站地圖
:::
登入
登入
帳號
密碼
登入
:::
所有書籍
「PHP8入門」目錄
MarkDown
1-1 安裝PHP運作環境
1. 學好程式的幾個建議
1-1 安裝PHP運作環境
1-2 安裝 VSCode 開發工具
1-3 安裝 Composer
1-4 關於PHP8
1-5 上課範例及需求
1-6 需要的學習心態
2. PHP基本語法
2-1 註解
2-2 PHP資訊頁
2-3 PHP的資料類型
2-4 關於陣列
2-5 PHP常用運算符(有用到再參閱)
2-6 關於函數(有用到再參閱)
2-7 關於迴圈(有用到再參閱)
2-8 建立專案目錄
3. 從前端界面入手
3-1 安裝 BootStrap5 來製作 RWD 自適應網站
3-2 設計RWD顯示界面
3-2-1 設計導覽列
3-2-2 設計主畫面
3-2-3 設計文章版面
3-2-4 側邊欄的列表
3-2-5 顯示頁面 index.html 初步完成
3-3 設計管理界面
3-3-1 用AI建立發布文章的自適應表單
3-3-2 認識表單元件
3-3-3 用AI來建立資料表
3-3-4 常用資料庫的欄位類型
3-3-5 發布頁面 admin.html 初步完成
4. 用AI來產生表單儲存功能
4-1 接收表單的值
4-2 PDO的資料庫連線
4-3 用PDO寫入資料庫
4-4 檔案上傳與接收
4-5 更新資料(寫入檔案資訊)
4-6 用PDO讀取資料
4-7 讀出資料的過濾
4-8 整併並引入共同執行檔案 header.php
4-9 把設定值也獨立成 config.php
5. 用Smarty樣板引擎將資料與前端結合
5-1 建立主樣板檔 index.tpl 並套用之
5-2 將主樣板檔拆分成小樣板
5-3 顯示所有文章摘要
5-3-1 將所有文章變成二維陣列
5-3-2 讓樣板檔接收二維陣列
5-3-3 加入分頁
5-3-4 自定義分頁工具列
5-4 建立管理樣板 admin.tpl 並套用之
5-5 將程式函式化以便彈性呼叫
5-6 加入 switch 流程控制
5-7 完成顯示單一文章的功能
5-8 加入fancybox燈箱效果
6. 讓導覽列有作用
6-1 只顯示某一分類文章
6-2 該分類沒有文章的處理
6-3 讓搜尋框有作用
6-4 讓側邊欄的年度文章數有作用
6-5 讀出指定年度的文章
7. 後台發布文章界面
7-1 讓前後台統一主樣板
7-2 加入管理者認證
7-3 用session機制讓系統記住管理員
7-4 加入編輯功能
7-5 加入儲存修改(更新)功能
7-6 加入更新點閱數的功能
7-7 讓修改時可以加入圖片
7-8 讓圖片可以刪除
7-9 加入刪除文章功能
11-1 多檔上傳
11-2 安全檔名
11-3 產生圖片縮圖
11-4 上傳影片並產生縮圖
1-3 安裝 Composer
PHP8入門 ====== ### 一、安裝前準備 1. 官網:
2. 開發工具,請使用自己慣用的文字編輯器即可,上課用Visual Studio Code 為主 3. 建議先安裝以下兩個軟體: - node.js
,讓功能更完整(可安裝 [18.17.0 LTS ](https://nodejs.org/dist/v18.17.0/node-v18.17.0-x64.msi "Download 18.17.0 LTS")版本)。 - git
,VSCode的版本控制才會有作用(可安裝 [64-bit Git for Windows Setup](https://github.com/git-for-windows/git/releases/download/v2.41.0.windows.3/Git-2.41.0.3-64-bit.exe))。 4. 做好編輯器設定 ```javascript { "editor.fontSize": 18, // - 'bounded' (當檢視區縮至最小並設定 'editor.wordWrapColumn' 時換行). "editor.wordWrap": "on", // 控制編輯器是否應自動設定貼上的內容格式。格式器必須可供使用,而且格式器應該能夠設定文件中一個範圍的格式。 "editor.formatOnPaste": true, // 使用滑鼠滾輪並按住 Ctrl 時,縮放編輯器的字型 "editor.mouseWheelZoom": true, // 在儲存時設定檔案格式。格式器必須處於可用狀態、檔案不得自動儲存,且編輯器不得關機。 "editor.formatOnSave": false, // 控制是否應在輸入時自動顯示建議 "editor.quickSuggestions": { "other": true, "comments": false, "strings": true }, "editor.minimap.enabled": false, "editor.tabCompletion": "on", "editor.linkedEditing": true, "editor.suggestSelection": "first", // 若啟用,則會在儲存檔案時,修剪檔案末新行尾的所有新行。 "files.trimFinalNewlines": true, // 若啟用,將在儲存檔案時修剪尾端空白。 "files.trimTrailingWhitespace": true, "files.associations": { "*.tpl": "html" }, "[php]": { "editor.formatOnSave": true, "editor.defaultFormatter": "kokororin.vscode-phpfmt" }, "emmet.triggerExpansionOnTab": true, "emmet.showSuggestionsAsSnippets": true, "git.ignoreMissingGitWarning": true, "git.enableSmartCommit": true, "git.autofetch": true, "git.confirmSync": false, } ``` ### 二、安裝常用套件: - `Auto Close Tag` : 讓標籤自動閉合的。 - `Auto Rename Tag` : 讓成對的標籤自動一起修改。 - `AutoFileName` : 讓編輯器自動完成圖片或檔案路徑。 - `Bootstrap 5 Quick Snippets` : 快速插入Bootstrap 5 語法片段。 - `ChatGPT - Bito AI Code Assistant`:用AI來幫我們寫程式碼~ - `Chinese (Traditional) Language Pack for Visual Studio Code`:中文介面 - `Copy file name`:複製檔名 - `Git History`:檢視Git的完整紀錄 - `HTML CSS Support`:網頁的 id 及 class 自動補全,不用自己死記網頁中的 id 或 class ```javascript "css.styleSheets": [ "https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" ], "css.enabledLanguages": [ "css", "scss", "tpl" ], ``` - `indent-rainbow`:以顏色標出縮排,更容易辨識與對齊 - `Material Icon Theme`:精美的檔案圖示(非必須) - `PHP Intelephense`:夠快速完成PHP程式碼及查找關聯、精確錯誤報告,請加入設定: ```javascript "intelephense.completion.fullyQualifyGlobalConstantsAndFunctions": true, "intelephense.environment.includePaths": [ "vendor" ], ``` - 在套件搜尋框輸入「@builtin php」 - 將「PHP Language Features」關閉,避免功能衝突 - `phpfmt-PHP formatter`:格式化PHP程式碼用,請加入設定(php.exe 的實際路徑請視實際情況修改) ```javascript // php executable path "phpfmt.php_bin": "C:/UniServerZ/core/php82/php.exe", // enable auto align of ST_EQUAL and T_DOUBLE_ARROW "phpfmt.enable_auto_align": true, // fixes visibiliy order for method in classes - PSR-2 4.2 "phpfmt.visibility_order": true, // convert multistatement blocks into multiline blocks "phpfmt.smart_linebreak_after_curly": true, ``` - `Prettier - Code formatter`:美化HTML、JavaScript、CSS...等格式器 - `vscode-goto-documentation`:快速檔案搜尋 - 不過癮的話,這裡還有更多他人推薦的套件:
- 最後的完整設定檔: ```javascript { "editor.fontSize": 18, // - 'bounded' (當檢視區縮至最小並設定 'editor.wordWrapColumn' 時換行). "editor.wordWrap": "on", // 控制編輯器是否應自動設定貼上的內容格式。格式器必須可供使用,而且格式器應該能夠設定文件中一個範圍的格式。 "editor.formatOnPaste": true, // 使用滑鼠滾輪並按住 Ctrl 時,縮放編輯器的字型 "editor.mouseWheelZoom": true, // 在儲存時設定檔案格式。格式器必須處於可用狀態、檔案不得自動儲存,且編輯器不得關機。 "editor.formatOnSave": false, // 控制是否應在輸入時自動顯示建議 "editor.quickSuggestions": { "other": true, "comments": false, "strings": true }, "editor.minimap.enabled": false, "editor.tabCompletion": "on", "editor.linkedEditing": true, "editor.suggestSelection": "first", // 若啟用,則會在儲存檔案時,修剪檔案末新行尾的所有新行。 "files.trimFinalNewlines": true, // 若啟用,將在儲存檔案時修剪尾端空白。 "files.trimTrailingWhitespace": true, "files.associations": { "*.tpl": "html" }, "[php]": { "editor.formatOnSave": true, "editor.defaultFormatter": "kokororin.vscode-phpfmt" }, "emmet.triggerExpansionOnTab": true, "emmet.showSuggestionsAsSnippets": true, "git.ignoreMissingGitWarning": true, "git.enableSmartCommit": true, "git.autofetch": true, "git.confirmSync": false, "css.styleSheets": [ "https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" ], "css.enabledLanguages": [ "css", "scss", "tpl" ], "[jsonc]": { "editor.defaultFormatter": "vscode.json-language-features" }, // php executable path "phpfmt.php_bin": "C:/UniServerZ/core/php82/php.exe", // enable auto align of ST_EQUAL and T_DOUBLE_ARROW "phpfmt.enable_auto_align": true, // fixes visibiliy order for method in classes - PSR-2 4.2 "phpfmt.visibility_order": true, // convert multistatement blocks into multiline blocks "phpfmt.smart_linebreak_after_curly": true, "intelephense.completion.fullyQualifyGlobalConstantsAndFunctions": true, "intelephense.environment.includePaths": [ "vendor" ], } ``` ### 三、常用快捷鍵 1.
Ctrl
+
N
:建立新檔 2.
Ctrl
+
C
:
複製
3.
Ctrl
+
V
:
貼上
4.
Ctrl
+
S
:
儲存
5.
Ctrl
+
F
:搜尋 6.
Ctrl
+
Shift
+
F
:跨檔搜尋 7.
Ctrl
+
H
:取代 8.
Ctrl
+
/
:
註解
9.
Shift
+
Alt
+
A
:
區域註解
10.
Ctrl
+
`
:
開終端機
11.
Ctrl
+
B
:關閉左側工具 12.
Ctrl
+
X
:刪除目前行 13.
Ctrl
+
G
:跳至某行 14.
Ctrl
+
end
:跳至檔案結尾 15.
Ctrl
+
Z
:回上個動作(復原) 16.
Ctrl
+
Y
:回下個動作(再做) 17.
shift
+
alt
+
F
:美化(格式化)語法 18.
shift
+
alt
+
滑鼠左鍵
:區塊標記 19. 完整快捷鍵整理:
20. Emmet語法:
:::
書籍目錄
展開
|
闔起
快速登入
所有討論區
Tad Search 資料查詢
懶人框架討論區
實戰PHP7+MySQL
XOOPS輕鬆架快速上手
校園網站輕鬆架一般討論區
Booking Helper 預約助手
es_stud_sign 班級報名
es charge 學生收費管理
E-Stud import 學生名冊管理
es_after_school 課後照顧報名
es_exam 學生作業繳交
ES_panel 校務行政面板
es_timetable 課表
ES_youtube 本校影音
info_whats 網路設備記錄
jill booking 場地預約
jill_notice 臨時公告
jill query 簡易查詢
jill receipt 領據填報
kw club 社團報名
kw device 設備借用管理系統
ntpc_oprnid 新北市 OpenID 登入
TinyD嵌入內容模組
ugm contact us 聯絡我們
ugm page 自訂頁面
ugm table 萬用表格
Yaoh Servicelearning 服務學習管理系統
dummy 自訂模組
soone_submit 投稿模組
Tad Adm 站長工具箱
Tad Assignment 作業上傳展示模組
Tad Blocks 進階區塊管理
Tad Book3 線上書籍
Tad Cal 行事曆
Tad Cbox 即時留言簿
Tad Discuss 討論區模組
Tad Embed 崁入模組
Tad Evaluation 評鑑檔案管理
Tad Form 萬用表單模組
Tad FAQ 常見問答
Tad Google 相簿
Tad Gallery 電子相簿
Tad Guide 安裝精靈
Tad Honor 榮譽榜
Tad idioms 背背成語
Tad Link 好站連結
Tad Login 快速登入
Tad Lunch3 午餐資訊
Tad Lunch2 營養午餐公告
Tad Meeting 會議系統
Tad Merage 線上合併套印
Tad News 本站消息
Tad Player 影音播放
Tad RSS 友站新聞
Tad Repair 維修通報
Tad SiteMap網站地圖
Tad Timeline 重要紀事
Tad Themes 佈景管理
Tad Tools 工具包
Tad TV 直播電視
Tad Uploader 檔案上傳模組
Tad Users 大量會員管理
Tad Web 多人網頁模組
MyTabs 我的頁籤
Random Quote 隨機小語
LogCounterX 網站流量統計
Yaoh light 多區塊多層次跑馬燈模組
校園網站輕鬆架功能建議區
佈景討論區
即時留言簿
search
進階搜尋
計數器
今天:
昨天:
總計: