零基礎學后端-PHP語言(第一期-PHP環境配置)

從本期開始,我們學習PHP,但是我們要先配置PHP環境

PHP官網鏈接:PHP For Windows: Binaries and sources Releases

我們可以看到有以下資源

可以看到有很多php的版本,有Non Thread Safe和Thread Safe,還有zip,Debug Pack,Development Package等,我們下載哪一個呢

我們先來了解一下

線程安全版(Thread Safe)

定義:在多線程環境中,通過鎖機制(如互斥鎖)保護共享資源,確保線程安全?

適用場景:適用于多線程 Web 服務器(如 Apache 的?worker?或?event?MPM、Windows 的 IIS 多線程模式) 。

性能:由于需要鎖機制,性能開銷較大(相比 NTS 版本,性能可能低 20%-30%) 。

非線程安全版(Non Thread Safe)

定義:不處理線程間資源共享問題,適用于單線程環境 。

適用場景:適用于單線程 Web 服務器(如 Apache 的?prefork?MPM)、FastCGI 模式(如 PHP-FPM)或命令行腳本 。

性能:無鎖機制開銷,性能更高(相比 TS 版本,性能可能高 10%-20%)?

Zip

內容:這是?PHP 主程序的標準壓縮包(可能是線程安全或非線程安全版,取決于你下載的版本)。

用途:解壓后可直接運行 PHP(含?php.exephp.ini?等核心文件)。

注意:這是運行 PHP 必需的文件,另外兩個包不能替代它

Debug Pack

內容:包含?調試符號文件(PDB)?和?調試擴展(如?php_xdebug.dll

用途

用于調試 PHP 核心崩潰(如使用 WinDbg 或 Visual Studio 分析?php.exe?崩潰時的調用棧)。

包含?xdebug?等調試擴展,方便開發時跟蹤變量、性能分析。

適用人群:開發者或需要排查 PHP 本身 Bug?的高級用戶。

注意普通運行不需要,但開發環境建議安裝。

Development Package

內容:包含?開發 PHP 擴展的頭文件(.h)和工具鏈(如?phpizephp-config)。

用途

用于編譯自定義 PHP 擴展(如用 C 語言編寫?.dll?擴展)。

提供?config.w32?模板(Windows 下編譯擴展的配置文件)。

適用人群:需要開發或修改 PHP 擴展的程序員。

注意運行 PHP 不需要,僅開發擴展時有用。

但是這些我們暫時不管,因為php的語法只和版本有關系,也就是說只要 PHP 版本一致(比如都是 PHP 8.4),語法就100%相同,所以自己隨便選就行了(如果有團隊要求按具體情況來,下面我們用線程安全版的ZIP為例子)

下載完以后,然后解壓(這個應該都會,因為是zip文件直接雙擊進去然后托在桌面上就行)

環境配置

接下來配置環境(我的電腦是windows10,可能會和你們的不一樣)

打開"設置">"系統">"系統信息">"高級系統設置"

(拓展一下用戶變量和系統變量的區別:用戶變量是針對特定用戶定義的,只在該用戶的會話或程序中有效;系統變量是全局性的,對整個系統或所有用戶都有效。)

因為我電腦的語句比較多,擔心污染環境就在用戶變量里面改了

選中"path"后直接"編輯",然后點"新建"把php文件路徑加進去就行

(我以前配的,所以和你們看見的版本應該不一樣)

至此,配置完成

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/915768.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/915768.shtml
英文地址,請注明出處:http://en.pswp.cn/news/915768.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++ primer知識點總結

《C Primer》系統學習指南:從C到C的平滑過渡根據你提供的《C Primer》目錄和你的需求(C語言背景轉C,側重網絡編程),我將為你制定一個全面的學習計劃,包含知識點詳解、C/C對比、實戰案例和分階段項目練習。第…

異構融合 4A:重構高性能計算與復雜場景分析的安全與效率邊界

當全球數據量以每兩年翻一番的速度爆炸式增長,高性能計算(HPC)與復雜場景分析正成為破解氣候預測、基因測序、金融風控等世界級難題的關鍵引擎。但異構計算環境的碎片化、多系統協同的復雜性、數據流動的安全風險,正在形成制約行業…

【華為機試】240. 搜索二維矩陣 II

文章目錄240. 搜索二維矩陣 II描述示例 1示例 2提示解題思路核心分析問題轉化算法實現方法1:右上角開始搜索(推薦)方法2:逐行二分查找方法3:分治法方法4:左下角開始搜索復雜度分析核心要點數學證明右上角搜…

瘋狂星期四文案網第16天運營日記

網站運營第16天,點擊觀站: 瘋狂星期四 crazy-thursday.com 全網最全的瘋狂星期四文案網站 運營報告 昨日訪問量 昨日30多ip, 今天也差不多,同步上周下降了一些,感覺明天瘋狂星期四要少很多了,記得上周四700多ip&…

Linux系統基礎入門與配置指南

Linux基本概述與配置 一、我們為什么使用Linux(Linux的優點)開源與自由 免費: 無需支付許可費用,任何人都可以自由下載、安裝和使用。源代碼開放: 任何人都可以查看、修改和分發源代碼。這帶來了極高的透明度、安全性和…

如何刪除VSCode Marketplace中的publisher

網頁上并沒有提供刪除的按鈕,需要通過命令的形式刪除。 vsce delete-publisher [要刪除的名字]# 鍵入token # y 確認這里的token是之前在Azure DevOps中創建的token,忘了的話可以重建一個 刷新網頁看一下 成功刪除了。

Windows安裝git教程(圖文版)

Git 是一個分布式版本控制系統,用于跟蹤文件的變化,特別是在軟件開發中。它使得多個開發者可以在不同的機器上并行工作,然后將他們的改動合并在一起。是在開發過程中,經常會用到的一個工具。本章教程,主要介紹Windows上…

Remote Framebuffer Protocol (RFB) 詳解

RFC 6143 規范文檔:The Remote Framebuffer Protocol 文章目錄1. 引言2. 初始連接流程2.1 TCP連接建立2.2 協議版本協商2.3 安全握手3. 顯示協議機制3.1 核心概念3.2 像素格式4. 輸入協議4.1 鍵盤事件(KeyEvent)4.2 鼠標事件(PointerEvent)5. 協議消息詳解5.1 握手消…

從 DeepSeek-V3 到 Kimi K2:八種現代大語言模型架構設計

編譯:青稞社區Kimi 原文:https://magazine.sebastianraschka.com/p/the-big-llm-architecture-comparison 首發:https://mp.weixin.qq.com/s/lSM2jk1UxJVz1WllWYQ4aQ 自原始 GPT 架構開發以來已經過去了七年。乍一看,從 2019 年的…

linux驅動開發筆記--GPIO驅動開發

目錄 前言 一、設備樹配置 二、驅動編寫 三、用戶空間測試 總結 前言 開發平臺:全志A133,開發環境:linux4.9andrio10,開發板:HelperBoard A133_V2.5。 一、設備樹配置 打開板級設備樹配置文件,路徑&a…

騰訊iOA:企業軟件合規與安全的免費守護者

人們眼中的天才之所以卓越非凡,并非天資超人一等而是付出了持續不斷的努力。1萬小時的錘煉是任何人從平凡變成超凡的必要條件。———— 馬爾科姆格拉德威爾 目錄 一、為什么要使用騰訊iOA? 二、中小企業軟件合規痛點 三、騰訊iOA解決方案 3.1 核心技…

C#定時任務實戰指南:從基礎Timer到Hangfire高級應用

高效管理后臺作業,讓定時任務成為應用的可靠引擎 在C#應用開發中,定時任務是實現數據同步、報表生成、系統維護等后臺作業的核心技術。本文將深入探討C#生態中主流的定時任務解決方案,從基礎的內置Timer到強大的Quartz.NET和Hangfire框架&…

軟件開發、項目開發基本步驟

? 立項階段:項目定義、需求收集與分析、可行性分析、風險評估與規劃、項目團隊組建、制定項目計劃、獲取批準與支持。? 需求評審與分析:? 項目團隊(包括產品經理、開發人員、測試人員等)共同參與,明確項目的目標、功…

慢 SQL接口性能優化實戰

在對某電商項目進行接口性能壓測時,發現 /product/search 接口響應緩慢,存在明顯性能瓶頸。通過慢查詢日志排查和 SQL 優化,最終實現了接口響應速度的顯著提升。本文完整還原此次優化過程,特別強調操作步驟和問題分析過程&#xf…

【C#】在WinForms中實現控件跨TabPage共享的優雅方案

文章目錄一、問題背景二、基本實現方案1. 通過修改Parent屬性實現控件移動三、進階優化方案1. 創建控件共享管理類2. 使用用戶控件封裝共享內容四、方案對比與選擇建議五、最佳實踐建議六、完整示例代碼一、問題背景 在Windows窗體應用程序開發中,我們經常遇到需要…

Android Camera openCamera

由頭 今日調休,終于終于閑下來了,可以寫一下博客了,剛好打開自己電腦,就有四年前下的谷歌Android 12源碼,不是很舊,剛好夠用,不用再另外下載新源碼了,不得不感慨這時間過得真快啊~廢…

神經網絡——池化層

目錄 池化層 最大池化層 MaxPool2d 最大池化操作圖示 最大池化操作代碼演示 綜合代碼案例 池化層 池化層(Pooling Layer) 核心作用:通過降采樣減少特征圖尺寸,降低計算量,增強特征魯棒性。 1. 常見類型 …

Android 默認圖庫播放視頻沒有自動循環功能,如何添加2

Android 默認圖庫播放視頻沒有自動循環功能, 如何添加 按如下方式修改可以添加 開發云 - 一站式云服務平臺 --- a/packages/apps/Gallery2/src/com/android/gallery3d/app/MovieActivity.java +++ b/packages/apps/Gallery2/src/com/android/gallery3d/app/MovieActivity.java…

數字孿生賦能智慧能源電力傳輸管理新模式

在“雙碳”戰略和能源數字化轉型的雙重驅動下,智慧能源系統亟需更高效、精細和智能的管理手段。數字孿生技術作為融合物理世界與數字空間的橋梁,為電力傳輸系統的全生命周期管理提供了強有力的技術支撐。本文聚焦數字孿生在智慧能源電力傳輸中的應用&…

Jmeter的元件使用介紹:(二)線程組詳解

Jmeter線程組默認包含三種:線程組、setUp線程組、tearDown線程組。線程組之間的執行順序為:setUp線程組->線程組->tearDown線程組。多數情況都是選用線程組,setUp線程組用于做一些腳本的前置準備,比如:跨線程組設…