在 Web 開發領域,PHP 仍然是最受歡迎的程式語言之一,為數百萬個網站和應用程式提供支援。無論您是經驗豐富的開發人員還是剛開始使用 PHP,擁有一組方便的程式碼片段都可以顯著簡化您的開發流程。本文介紹了每個開發人員都應保留在其工具包中的 10 個基本 PHP 程式碼片段。
1. 連接到資料庫
建立與 MySQL 資料庫的連線是 PHP 的基礎。以下是安全執行此操作的方法:
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); }
提示:
始終使用環境變數來儲存資料庫憑證等敏感資訊。
2. 從資料庫取得數據
從資料庫檢索資料對於任何應用程式都至關重要。使用此程式碼段可以有效地查詢您的資料。
$sql = "SELECT * FROM table_name"; $result = $conn->query($sql); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { echo "id: " . $row["id"] . " - Name: " . $row["name"] . "<br>"; } } else { echo "0 results"; }
提示:
使用準備好的語句來防止 SQL 注入。
3. 將資料插入資料庫
將資料插入資料庫是一項常見任務。以下是如何安全地進行操作。
$sql = "INSERT INTO table_name (name, email) VALUES ('John Doe', 'john@example.com')"; if ($conn->query($sql) === TRUE) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . $conn->error; }
提示:
在將使用者輸入插入資料庫之前,請始終驗證和清理使用者輸入。
4. 更新資料庫中的數據
更新記錄是另一個重要操作。此程式碼片段允許直接進行資料修改。
$sql = "UPDATE table_name SET email='john.doe@example.com' WHERE name='John Doe'"; if ($conn->query($sql) === TRUE) { echo "Record updated successfully"; } else { echo "Error updating record: " . $conn->error; }
提示:
確保檢查受影響的行數以驗證更新是否成功。
5. 從資料庫中刪除數據
刪除不再需要的記錄對於維護乾淨的資料庫至關重要。
$sql = "DELETE FROM table_name WHERE id=1"; if ($conn->query($sql) === TRUE) { echo "Record deleted successfully"; } else { echo "Error deleting record: " . $conn->error; }
提示:
透過新增deleted_at列來實現軟刪除,以避免永久資料遺失。
6. 表單驗證
基本表單驗證對於確保資料完整性和增強使用者體驗至關重要。
if ($_SERVER["REQUEST_METHOD"] == "POST") { $name = trim($_POST["name"]); if (empty($name)) { echo "Name is required"; } }
提示:
使用 PHP 過濾器來清理和驗證使用者輸入。
7. 發送電子郵件
使用 PHP 的 mail() 函數可以輕鬆實作傳送電子郵件,但請考慮使用 PHPMailer 等函式庫來新增功能。
$to = "recipient@example.com"; $subject = "Subject"; $message = "Hello!"; $headers = "From: sender@example.com"; mail($to, $subject, $message, $headers);
提示:
配置 SMTP 設定以實現可靠的電子郵件傳送。
8. 檢查陣列是否為空
檢查陣列是否為空有助於避免應用程式邏輯中的錯誤。
if (empty($array)) { echo "Array is empty."; }
提示:
為了清楚起見,請使用 count($array) === 0,特別是在檢查空數組和空值時。
9. 使用會話
管理使用者會話對於許多應用程式至關重要,尤其是使用者身份驗證。
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); }
提示:
登入時重新產生會話 ID,以防止會話劫持。
10. 密碼哈希
安全儲存密碼對於任何應用程式都至關重要。使用 PHP 的內建函數進行雜湊處理。
$sql = "SELECT * FROM table_name"; $result = $conn->query($sql); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { echo "id: " . $row["id"] . " - Name: " . $row["name"] . "<br>"; } } else { echo "0 results"; }
提示:
永遠使用password_hash() 和password_verify() 來管理密碼。
擁有一系列重要的 PHP 程式碼片段觸手可及,可以大大提高您作為開發人員的效率和效力。無論您是處理資料庫操作、驗證表單還是管理會話,這些程式碼片段都可以作為您的程式設計工具包中的寶貴工具。透過將這些技術融入您的工作流程,您可以更快地建立強大且安全的應用程式。對於那些尋求更全面的解決方案或專家指導的人來說,聯繫英國的 PHP 開發服務可以提供將您的專案提升到新水平所需的支援。
以上是每個開發人員都應該隨身攜帶的 PHP 程式碼片段的詳細內容。更多資訊請關注PHP中文網其他相關文章!

TheSecretTokeEpingAphp-PowerEdwebSiterUnningSmoothlyShyunderHeavyLoadInVolvOLVOLVOLDEVERSALKEYSTRATICES:1)emplactopCodeCachingWithOpcachingWithOpCacheToreCescriptexecution Time,2)使用atabasequercachingCachingCachingWithRedataBasEndataBaseLeSendataBaseLoad,3)

你應該關心DependencyInjection(DI),因為它能讓你的代碼更清晰、更易維護。 1)DI通過解耦類,使其更模塊化,2)提高了測試的便捷性和代碼的靈活性,3)使用DI容器可以管理複雜的依賴關係,但要注意性能影響和循環依賴問題,4)最佳實踐是依賴於抽象接口,實現鬆散耦合。

是的,優化papplicationispossibleandessential.1)empartcachingingcachingusedapcutorediucedsatabaseload.2)優化的atabaseswithexing,高效Quereteries,and ConconnectionPooling.3)EnhanceCodeWithBuilt-unctions,避免使用,避免使用ingglobalalairaiables,並避免使用

theKeyStrategiestosigantificallyBoostPhpaPplicationPerformenCeare:1)UseOpCodeCachingLikeLikeLikeLikeLikeCacheToreDuceExecutiontime,2)優化AtabaseInteractionswithPreparedStateTementStatementStatementAndProperIndexing,3)配置

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增強codemodocultion,可驗證性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

選擇DependencyInjection(DI)用於大型應用,ServiceLocator適合小型項目或原型。 1)DI通過構造函數注入依賴,提高代碼的測試性和模塊化。 2)ServiceLocator通過中心註冊獲取服務,方便但可能導致代碼耦合度增加。

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)啟用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替換loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

phpemailvalidation invoLvesthreesteps:1)格式化進行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章

熱工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SublimeText3 Linux新版
SublimeText3 Linux最新版

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

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