在本文中,我將向您展示如何從終端在 PHP 版本之間切換,而無需重新開啟終端或使用「查看進階系統設定」。
1.下載並安裝cmder
前往https://cmder.app,下載並解壓縮cmder zip 文件,然後查看這篇文章《cmder 如何讓我的生活更輕鬆》- 第一部分和第二部分,您可以在其中找到有關如何安裝cmder 的詳細資訊並配置您自己的別名。
2. 準備您的 php 檔案:
出於演示目的,我們需要下載不同版本的php 並轉到PHP 存檔,下載所需的版本,然後將它們解壓縮到特定資料夾中(例如“C:php-archive”) ).
完成後,開啟「查看進階系統設定」並為不同的 PHP 版本建立新變數(見下圖)。
接下來,您將新增一個名為「current_php」的變量,例如,該變數將在您每次變更時保存當前的 php 版本,然後在路徑變數中引用它(請參閱下圖)。
3.安裝巧克力
現在我們已經完成了高級系統設定中的所有內容,我們將轉到chocolatey.org並安裝chocolatey,這將允許您更新環境變數。
以管理員權限開啟 Powershell,然後按照指示以正確的方式安裝它,完成後在終端機中輸入 choco 或 choco -v 即可查看是否安裝成功以及安裝的版本。
4.從終端切換php版本
首先,以管理員權限啟動你的終端機(否則接下來的步驟將不起作用!!),要切換你的php 版本,你需要輸入setx current_php [your_target_php_location] /m 其中[your_target_php_location] 是絕對路徑您想要的php 版本或使用您在此定義的php 版本之一,例如setx current_php %php7% /m,現在您已將路徑中的php 切換到版本7.0環境,但你的終端不知道,要重新加載更新,你需要另一個命令,它是RefreshEnv.cmd,別名refreshenv,這個是巧克力自帶的,看看這個Update-SessionEnvironment。
5.我答應過你的一個命令
最後一步是建立一個有用的別名,讓流程更容易,建立一個像這樣的別名: setphp=setx current_php %$1% /m $tfreshenv 現在我們可以採用前面的範例( setx current_php %php7% / m )並執行此setphp php7,php7 將使用別名替換內部的$1 變量,該別名相當於setx current_php %php7% /m $tfreshenv,然後檢查php --版本。
在第四步中,我們討論了以管理員權限啟動您的終端,但當然您不會記得每次都這樣做,因此為了解決這個問題,我們需要一些額外的東西。
# Parameters: param( [string]$variableName, [string]$variableValue ) # Check if running as administrator If (-not ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) { # Relaunch as administrator with hidden window $arguments = "-ExecutionPolicy Bypass -File `"$PSCommandPath`" -variableName `"$variableName`" -variableValue `"$variableValue`"" Start-Process powershell -ArgumentList $arguments -Verb RunAs -WindowStyle Hidden exit } if ($variableName -and $variableValue) { $variableValueContent = [System.Environment]::GetEnvironmentVariable($variableValue, [System.EnvironmentVariableTarget]::Machine) if ($variableValueContent) { [System.Environment]::SetEnvironmentVariable($variableName, $variableValueContent, [System.EnvironmentVariableTarget]::Machine) } else { [System.Environment]::SetEnvironmentVariable($variableName, $variableValue, [System.EnvironmentVariableTarget]::Machine) } Write-Host "Environment variable '$variableName' set to '$variableValue' at the system level." } else { Write-Host "Please provide both a variable name and value." }
將此powershell 腳本儲存在名稱set-env.ps1 下的某個位置,然後前往您的cmder 終端,建立一個別名,如下所示setvar=powershell -ExecutionPolicy Bypass -File "/your/path/to /set-env.ps1" $1 $2 &&freshenv,這個別名會取得2個參數並將它們傳遞給powershell腳本,參數$1將保存環境變數名稱,$2將保存環境變數值,後面是chocolatey命令刷新終端的所有內容,然後腳本檢查「管理權限」以使用管理員權限執行setx 指令。
由於我們之前討論過「current_php」變量,因此我們將使用它作為範例,即使我們沒有以管理員權限啟動cmder,也可以使用新的別名setvar 來更改php 版本,我們輸入setvar current_php php7,或者如果您喜歡使用絕對路徑類型setvar current_php your/target/php/location。
6.您可能遇到的問題
切換php 版本後發現的問題是,alias 關鍵字和所有支援的linux 命令不再在cmder 上運行,到目前為止我找到的解決方案是添加“C:Cmdervendorgit-for-windowsusrbin”和“C :Cmdervendorbin”到路徑環境變數。
7. 最後的想法
當然你可以這樣做,為/your/path/to/php8/php.exe 建立一個別名php8 並透過輸入php8 my-script.php 來運行你的php 程式碼,但當涉及到類似的事情時作曲家或任何依賴路徑變數的東西,那麼你將需要更持久的東西,因此這篇文章。
還有一件事,正如您可能已經得出的結論,您可以使用 setx 命令和 Chocolatey 來更新您喜歡的任何環境變數。
以上是windows下一鍵切換php版本的詳細內容。更多資訊請關注PHP中文網其他相關文章!

TooptimizePHPcodeforreducedmemoryusageandexecutiontime,followthesesteps:1)Usereferencesinsteadofcopyinglargedatastructurestoreducememoryconsumption.2)LeveragePHP'sbuilt-infunctionslikearray_mapforfasterexecution.3)Implementcachingmechanisms,suchasAPC

phpisusedforsendendemailsduetoitsignegrationwithservermailservicesand andexternalsmtpproviders,自動化intifications andMarketingCampaigns.1)設置設置yourphpenvenvironnvironnvironmentwithaweberswithawebserverserververandphp,確保themailfunctionisenabled.2)useabasicscruct

發送電子郵件的最佳方法是使用PHPMailer庫。 1)使用mail()函數簡單但不可靠,可能導致郵件進入垃圾郵件或無法送達。 2)PHPMailer提供更好的控制和可靠性,支持HTML郵件、附件和SMTP認證。 3)確保正確配置SMTP設置並使用加密(如STARTTLS或SSL/TLS)以增強安全性。 4)對於大量郵件,考慮使用郵件隊列系統來優化性能。

CustomHeadersheadersandAdvancedFeaturesInphpeMailenHanceFunctionalityAndreliability.1)CustomHeadersheadersheadersaddmetadatatatatataatafortrackingandCategorization.2)htmlemailsallowformattingandttinganditive.3)attachmentscanmentscanmentscanbesmentscanbestmentscanbesentscanbesentingslibrarieslibrarieslibrariesliblarikelikephpmailer.4)smtppapapairatienticationaltication enterticationallimpr

使用PHP和SMTP發送郵件可以通過PHPMailer庫實現。 1)安裝並配置PHPMailer,2)設置SMTP服務器細節,3)定義郵件內容,4)發送郵件並處理錯誤。使用此方法可以確保郵件的可靠性和安全性。

ThebestapproachforsendingemailsinPHPisusingthePHPMailerlibraryduetoitsreliability,featurerichness,andeaseofuse.PHPMailersupportsSMTP,providesdetailederrorhandling,allowssendingHTMLandplaintextemails,supportsattachments,andenhancessecurity.Foroptimalu

使用依賴注入(DI)的原因是它促進了代碼的松耦合、可測試性和可維護性。 1)使用構造函數注入依賴,2)避免使用服務定位器,3)利用依賴注入容器管理依賴,4)通過注入依賴提高測試性,5)避免過度注入依賴,6)考慮DI對性能的影響。

phpperformancetuningiscialbecapeitenhancesspeedandeffice,whatevitalforwebapplications.1)cachingwithapcureduccureducesdatabaseloadprovesrovessetimes.2)優化


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章

熱工具

WebStorm Mac版
好用的JavaScript開發工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Dreamweaver CS6
視覺化網頁開發工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。