菜鳥的PHP筆記3
今天白天再次被霸占,晚上整理了一下最近的日程,再次蹋上了我的菜鳥PHP學習之旅。今天下載了一個“創佳PHPTXT留言本 1.0版”,開始看原始碼咯。現在已經11點28了~。
先從index.php下手:require("config.php"); include("function.php");require和include的差別還是比較重要的。手冊:http://cn2.php.net/manual/zh/function.require.php。
現在來看看config.php和function.php裡面都有什麼東西吧。
config.php定義了一些整個網站都要用到的變數:例如管理員帳號、密碼、存放留言路徑及檔案名稱以及每頁顯示的留言條數。記得Discuz裡也有這麼一個東西,可能這是所有PHP站點的不成文規定?
function.php定義了一系列的函數,例如檢查使用者名稱、密碼,轉換UBB程式碼之類的,不過偶不知道UBB程式碼是什麼東西~。暫時不管了。
回到index.php。後面定義了幾個暫時不知道有什麼用的變量,暫時越過去吧,鬱悶。緊接著是一個header函數http://cn2.php.net/manual/zh/function.header.php。包含一個叫head.php的文件,用file()將保存留言的文件讀到一個叫msgd的陣列中。 http://cn2.php.net/manual/zh/function.file.php
今天大概把原始碼看懂了,不過實在太晚了,就暫時不寫了,以後再說吧。應該要安個Word然後直接複製過來(我也不知道為什麼我機器上沒有Word~~)。總之今天休息了,明天白天又沒時間,晚上不回家住,後天先送人去火車站,然後就回學校了。真不知道什麼時候能有時間繼續我的PHP。
require("head.php"); 包含一個文件,不過head似乎只被index.php包含了,不知道為什麼不直接寫進去。 head部分的程式碼主要是提供搜尋留言的表單。
$msgd=file($dbtable); 其中$dbtable在config中已經定義了,$dbtable="data/data.dat"; 該檔案用於保存留言。這裡用了file函數將這個檔案保存在$msgd數組中。文件的每一行是一個陣列元素。
$rows=count($msgd);這裡將用count函數將$msgd的元素數(留言數)存在$rows中。
if($kw)//關鍵字,判斷是否搜尋
{
for ($i=0;$i {
$tmp2=explode(分割符|",$msgd[$i]);//沒一條留言存在tmp2這個數組中。
if($type=="name")//如果是按姓名搜尋
{
$msgn[$i]=$tmp2[1];//將名字村在$ms[$i]中gn
}else//不是按名字搜尋的話
if(eregi($kw,$msgn[$i]))
{
$chj_nr[]=$msgd[$i];//使用數組$chj_nr[]存放一條完整的留言*符合要求的留言數量 }
}
if($chj_numib $total=ceil($chj_numib/$pagesize); //計算總頁數
}else//如果不是搜尋
{
$Hchj_numib=$rows; $msgd);
$total=ceil($chj_numib/$pagesize);
}
if($pagesize*$totalif($pagesize*$total
}
$page2=$page+1; //計算開始條數 //目前頁的開始
$pp2= $pp+$pagesize; //計算結尾條數 //同上
for($i=$pp; $i
{
if($i $tmp=explode ("|chjia_com|",$msg[$i]);
$tmp[10]=epost($tmp[10]);
?>
後面就是輸出一個留言了。到這裡index.php就基本完事了。
以上就是菜鳥的PHP筆記3的內容,更多相關內容請關注PHP中文網(www.php.cn)!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

PHP8.1中的枚舉功能通過定義命名常量增強了代碼的清晰度和類型安全性。 1)枚舉可以是整數、字符串或對象,提高了代碼可讀性和類型安全性。 2)枚舉基於類,支持面向對象特性,如遍歷和反射。 3)枚舉可用於比較和賦值,確保類型安全。 4)枚舉支持添加方法,實現複雜邏輯。 5)嚴格類型檢查和錯誤處理可避免常見錯誤。 6)枚舉減少魔法值,提升可維護性,但需注意性能優化。

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。
