国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
ubuntu
fedora
rhel
> suse
>安裝擴(kuò)展
>
>它通過使用phpinfo()函數(shù)安裝。此功能提供了有關(guān)您的PHP安裝的大量信息,包括已安裝的擴(kuò)展名列表。要使用它,請?jiān)赪eb服務(wù)器的文檔root中創(chuàng)建一個(gè)新的PHP文件,將調(diào)用添加到phpinfo(),然後在Web瀏覽器中查看此文件。已安裝的擴(kuò)展名在“ PHP Core”部分中列出。
>如何卸載PHP擴(kuò)展名?
>什麼是pecl存儲庫?
首頁 後端開發(fā) php教程 如何從源安裝PHP擴(kuò)展

如何從源安裝PHP擴(kuò)展

Feb 20, 2025 am 09:38 AM

如何從源安裝PHP擴(kuò)展

有時(shí),在安裝PHP之前,很難知道您需要哪些PHP擴(kuò)展。如果您以後需要添加擴(kuò)展名,則可能會(huì)很幸運(yùn),並且擴(kuò)展程序可能位於所使用的操作系統(tǒng)的存儲庫中。這可能只是一個(gè)簡單的sudo apt-get安裝php5-intl。但是,在其他情況下,您可能需要從Source安裝它 - Phalcon就是一種情況,但是通過引入供應(yīng)商支持,快捷方式和預(yù)編寫的說明,該過程使您的操作系統(tǒng)非常簡單。但是,如果其他擴(kuò)展程序沒有這樣的東西?

> 在本教程中,我們將在Linux Systems上安裝一些自定義擴(kuò)展(OS X - 過程幾乎相同)。該過程與我們已經(jīng)在Nitrous.io上所做的非常相似,但適用於本地環(huán)境 - 更具體地說,是Laravel Homestead。您可以輕鬆地從本教程得出安裝說明,並將其應(yīng)用於其他發(fā)行版。

鑰匙要點(diǎn)

>從源安裝PHP擴(kuò)展名需要PHP開發(fā)工具和計(jì)算機(jī)上安裝的編譯器,以及PHP源代碼和擴(kuò)展的源代碼。
    >從源安裝PHP擴(kuò)展的過程涉及多個(gè)步驟:下載源代碼,準(zhǔn)備使用PHPIZE編譯的擴(kuò)展程序文件夾,配置編譯環(huán)境,將源編譯到.SO文件中,然後將此文件移動(dòng)到該文件中當(dāng)前的PHP安裝的擴(kuò)展文件夾。
  • 安裝後,需要通過將其添加到php.ini文件中或?yàn)槲募A中的每個(gè)擴(kuò)展程序創(chuàng)建一個(gè)單獨(dú)的INI文件來啟用PHP擴(kuò)展,該文件夾加載了Php.ini後自動(dòng)包含。
  • 要?jiǎng)h除擴(kuò)展,您可以使用php5dismod工具,手動(dòng)刪除符號鏈接或從php.ini文件中刪除啟用行。
  • 啟動(dòng)VM
  • 如果您還沒有,請閱讀上面鏈接的宅基地帖子,然後啟動(dòng)並運(yùn)行。運(yùn)行新的Homestead盒子後,您立即應(yīng)該能夠執(zhí)行此操作:
  • >

>這很好,這是因?yàn)槟J(rèn)安裝的文件夾實(shí)際上還不包含任何文件。現(xiàn)在,vagrant ssh進(jìn)入VM,並執(zhí)行以下命令:

>

如何從源安裝PHP擴(kuò)展這將在默認(rèn)設(shè)置為homestead的路徑中創(chuàng)建一個(gè)有效的PHP信息文件。刷新URL現(xiàn)在將產(chǎn)生一個(gè)phpinfo屏幕:

<span>cd Code
</span><span>git clone https://github.com/Swader/publicinfo</span>

準(zhǔn)備環(huán)境

要從源構(gòu)建擴(kuò)展,我們需要安裝在計(jì)算機(jī)上的PHP開發(fā)工具,以及可以生成擴(kuò)展文件的編譯器。以下是您在各種操作系統(tǒng)上安裝這些先決條件的方式:如何從源安裝PHP擴(kuò)展

ubuntu

<span>cd Code
</span><span>git clone https://github.com/Swader/publicinfo</span>

fedora

<span>sudo apt-get install php5-dev php5-mysql gcc libpcre3-dev</span>

rhel

<span>sudo yum install php-devel php-mysqlnd gcc libtool</span>

> suse

<span>sudo yum install php-devel php-mysql gcc libtool</span>

如果您使用的是最新的宅基地,則所有這些工具都將為您安裝。準(zhǔn)備所有準(zhǔn)備的東西,讓我們開始安裝擴(kuò)展名。

>安裝擴(kuò)展

>您可以安裝兩種類型的擴(kuò)展:與PHP捆綁但默認(rèn)未安裝,第三方擴(kuò)展。諸如Phalcon之類的第三方擴(kuò)展通常通過提供快捷方式使安裝過程變得更加容易,因?yàn)樗鼈儾槐刈袷啬承﹤鹘y(tǒng)捆綁的PHP擴(kuò)展。

首先,讓我們進(jìn)入VM上的主文件夾:CD?。在那裡,製作下載文件夾,然後將CD添加到其中。安裝捆綁的擴(kuò)展程序時(shí),您需要在計(jì)算機(jī)上使用PHP的源代碼,最好是與當(dāng)前版本相匹配。 Homestead版本的使用率為5.5.12,所以我將下載一個(gè):>

>我正在使用上面的比利時(shí)鏡子,隨意使用下載檔案中的一個(gè)或任何其他鏡子。
<span>yast2 -i php5-pear php5-devel php5-mysql gcc</span>

>要查看所有捆綁擴(kuò)展的源,請進(jìn)入未架構(gòu)的PHP源代碼文件夾中的EXT文件夾,並使用LS。

安裝捆綁的擴(kuò)展如何從源安裝PHP擴(kuò)展

首先,如果您還沒有安裝它,我們將安裝PHP-INTL擴(kuò)展程序。如果這樣做,那很好 - 您將在下面看到的安裝過程對於每個(gè)捆綁的PHP擴(kuò)展程序都是相同的。 INTL擴(kuò)展是用於國際化的 - 如果您有興趣,請?jiān)诖颂庨喿x更多。

>

>看到INTL擴(kuò)展名需要ICU庫作為先決條件(如需求中所述),讓我們先安裝。

在其他分佈下,安裝說明可能會(huì)有所不同。最好是參考ICU網(wǎng)站或此步驟的個(gè)人發(fā)行文檔。 >

安裝了ICU後,請?jiān)谌栽贓xt文件夾中的同時(shí)進(jìn)行以下操作:>
<span>wget http://be2.php.net/distributions/php-5.5.12.tar.bz2
</span><span>tar xvjf php-5.5.12.tar.bz2
</span><span>cd php-5.5.12</span>

讓我們解釋一下發(fā)生的事情。

    phpize準(zhǔn)備擴(kuò)展名的文件夾以進(jìn)行補(bǔ)充。它允許您通過創(chuàng)建配置文件來執(zhí)行後續(xù)命令,並基本上使擴(kuò)展程序的文件夾“思考”它是PHP本身。實(shí)際上,PHPize之後的過程與您從源中安裝PHP時(shí)要做的事情相同 - 僅在這種情況下,只需編譯PHP的片段並準(zhǔn)備與已編譯和安裝的PHP一起使用。
  • ./配置-enable-intl配置編譯環(huán)境。它準(zhǔn)備了編譯器將需要製作Intl.so文件所需的所有內(nèi)容。即使我們在INTL文件夾中,啟用式標(biāo)誌也是必要的,因?yàn)樵撐募A有效地認(rèn)為它是
  • > php,並且我們需要幫助它實(shí)現(xiàn)這種幻覺。該命令告訴它:“好,您是PHP的源代碼。現(xiàn)在編譯並使用INTL擴(kuò)展名安裝。
  • > make將把源彙編為intl.o,將文件放在您當(dāng)前所在的文件夾中,在模塊子文件夾下方。 sudo make install會(huì)將此文件移至當(dāng)前PHP安裝的擴(kuò)展文件夾中。 > >我們現(xiàn)在需要做的就是通過讓php.ini消耗它來啟用擴(kuò)展。我們稍後會(huì)這樣做,讓我們首先編譯第三方擴(kuò)展。
  • >
  • 安裝第三方擴(kuò)展
  • 我們將安裝Mongo作為第三方擴(kuò)展。 Mongo有二進(jìn)制分佈,使安裝變得更簡單,但為了教育,讓我們手動(dòng)進(jìn)行。我們假設(shè)您已經(jīng)安裝了實(shí)際的Mongo,因此僅關(guān)注PHP擴(kuò)展名。如果您沒有安裝Mongo,請參閱其安裝文檔。
  • >

>這已經(jīng)構(gòu)建了我們的mongo.so文件,並將其放入PHP安裝的擴(kuò)展文件夾中。我們將在下一部分中啟用它。

啟用和測試
<span>cd Code
</span><span>git clone https://github.com/Swader/publicinfo</span>

查看我們的php擴(kuò)展文件夾中是否確實(shí)在列出的。 如何從源安裝PHP擴(kuò)展

如您所見,在那裡,它們在鮮綠色中突出顯示。 為了使它們啟用,我們需要告訴php.ini。有幾種方法可以做到這一點(diǎn):

  1. >您可以將行擴(kuò)展線= mongo.so。這起作用,在大多數(shù)情況下是一種完全有效的方法。
  2. >
  3. >您可以為每個(gè)中的每個(gè)文件創(chuàng)建一個(gè)單獨(dú)的INI文件,將它們放入加載php.ini後自動(dòng)包含的文件夾中,並以這種方式維護(hù)php.ini的分離和隔離。這種方法更健康,儘管很難實(shí)現(xiàn)。
  4. >
  5. 您可以組合2)和用於啟用PHP mod的默認(rèn)工具。宅基地使用這種方法,我們也會(huì)。
  6. >
<span>cd Code
</span><span>git clone https://github.com/Swader/publicinfo</span>

此文件夾是所有此類INI文件的存儲庫。在此處創(chuàng)建兩個(gè)新文件:

<span>sudo apt-get install php5-dev php5-mysql gcc libpcre3-dev</span>

這些命令創(chuàng)建了兩個(gè)新的INI文件,每個(gè)文件都用於我們以前構(gòu)建的擴(kuò)展之一。由於它們現(xiàn)在在mods-ovabable文件夾中,我們可以使用已經(jīng)可用的php5enmod(hart for php enable mod)命令行工具。 >

<span>sudo yum install php-devel php-mysqlnd gcc libtool</span>
>注意:如果您沒有PHP5ENMOD工具,則將INI文件鏈接到各種PHP Runtimes的Conf.d文件夾中,將有能力:>

有四個(gè)條目的原因是我們具有PHP的命令行版本和PHP的FPM版本。每個(gè)人都使用自己的php.ini文件,每個(gè)文件都會(huì)加載自己的conf.d文件夾以進(jìn)行擴(kuò)展 - 因此,如果我們希望全方位的擴(kuò)展名可用。僅當(dāng)您沒有php5enmod工具時(shí),才使用此方法。
<span>sudo yum install php-devel php-mysql gcc libtool</span>
>

最後,讓我們重新啟動(dòng)nginx和php-fpm加載這些更改。

查看我們是否已安裝了它們,請從之前刷新Phpinfo屏幕並分別搜索Mongo和Intl。

>
<span>yast2 -i php5-pear php5-devel php5-mysql gcc</span>

成功! 如何從源安裝PHP擴(kuò)展

刪除擴(kuò)展

要?jiǎng)h除擴(kuò)展,除非您在空間上確實(shí)很低,否則無需刪除任何實(shí)際文件。您可以通過三種方式進(jìn)行:

如果您有可用的工具,請運(yùn)行php5dismod。這與上述PHP5ENMOD工具相反。 .SO文件將保留在適當(dāng)?shù)奈恢?,並且INI文件將保留在mods-ovail中,它們只是不會(huì)加載,因?yàn)樗鼈兊姆栨溄訉膄pm和cli conf.d文件夾中刪除。

>手動(dòng)刪除符號鏈接。例如。 sudo rm /etc/php5/cli/conf.d/mongo.ini

    >如果將擴(kuò)展名直接放入php.ini文件中,從php.ini文件中刪除這些行,或者更好,請對它們進(jìn)行評論,以便在您改變主意的情況下可以進(jìn)一步使用。
  1. 結(jié)論
  2. 如您所見,即使沒有精確的說明,從源安裝擴(kuò)展也非常簡單,即使擴(kuò)展名不受操作系統(tǒng)的官方存儲庫的支持。下次您需要在 *NIX系統(tǒng)上的PHP安裝中添加擴(kuò)展名(此教程也適用於OS X),請參閱此帖子以獲取更新。

    請?jiān)谙旅媪粝履姆答?,讓我知道您是否對特定的擴(kuò)展程序感到困惑,並希望幫助安裝它。 >

    經(jīng)常詢問的問題(常見問題解答)有關(guān)從源

    安裝PHP擴(kuò)展的問題

    >從源安裝PHP擴(kuò)展的先決條件是什麼?首先,您需要在系統(tǒng)上安裝PHP。您還需要設(shè)置PHP開發(fā)環(huán)境,其中包括編譯器和製造商等工具。此外,您需要使用PHP源代碼,因?yàn)槟鷮⒅苯訌拇舜a中構(gòu)建擴(kuò)展名。最後,您需要具有擴(kuò)展名的源代碼。通??梢詮臄U(kuò)展名的官方網(wǎng)站或諸如PECL等存儲庫中下載。

    >

    >我如何驗(yàn)證是否正確安裝了PHP擴(kuò)展名?

    >

    >

    >它通過使用phpinfo()函數(shù)安裝。此功能提供了有關(guān)您的PHP安裝的大量信息,包括已安裝的擴(kuò)展名列表。要使用它,請?jiān)赪eb服務(wù)器的文檔root中創(chuàng)建一個(gè)新的PHP文件,將調(diào)用添加到phpinfo(),然後在Web瀏覽器中查看此文件。已安裝的擴(kuò)展名在“ PHP Core”部分中列出。

    >我可以在Windows系統(tǒng)上安裝PHP擴(kuò)展嗎?但是,與Unix樣系統(tǒng)相比,該過程略有不同。您通常會(huì)下載預(yù)編譯的DLL文件並將其添加到PHP安裝中,而不是從源中編譯擴(kuò)展名。 php.net網(wǎng)站提供了有關(guān)如何執(zhí)行此操作的詳細(xì)說明。

    >

    如果在安裝過程中遇到錯(cuò)誤,該怎麼辦?

    如果您在安裝過程中遇到錯(cuò)誤,則該怎麼辦步驟是仔細(xì)閱讀錯(cuò)誤消息。它通常包含有關(guān)出了什麼問題的線索。常見問題包括缺失依賴項(xiàng),不正確的配置選項(xiàng)以及PHP源代碼問題。如果您無法自己解決問題,請考慮向PHP社區(qū)尋求幫助。您可以在其中要求提供幫助的許多論壇和郵件列表。

    我如何更新PHP擴(kuò)展名?

    >更新PHP擴(kuò)展程序通常涉及下載擴(kuò)展程序的源代碼和源代碼的最新版本和然後重複安裝過程。但是,確切的步驟可以根據(jù)擴(kuò)展而有所不同。最好檢查擴(kuò)展程序的官方文檔中的特定更新說明。

    我可以一次安裝多個(gè)PHP擴(kuò)展名嗎?這可以通過在configure命令中指定多個(gè)擴(kuò)展名來完成。但是,請記住,每個(gè)擴(kuò)展程序可能具有自己的一組依賴項(xiàng)和配置選項(xiàng)。

    >如何卸載PHP擴(kuò)展名?

    卸載PHP擴(kuò)展程序涉及從php.ini文件中刪除擴(kuò)展名的配置,然後重新啟動(dòng)Web服務(wù)器。如果將擴(kuò)展名安裝為共享模塊,則您也可能需要?jiǎng)h除模塊的.so或.dll文件。

    >什麼是pecl存儲庫?

    > pecl存儲庫是一個(gè)集合以源代碼分配的PHP擴(kuò)展名。可以使用PECL命令安裝這些擴(kuò)展名,該命令可以自動(dòng)下載,編譯和安裝擴(kuò)展名的過程。

    >

    >我可以安裝php擴(kuò)展程序而無需root訪問嗎?

    是的,可以安裝無根訪問的PHP擴(kuò)展。這可以通過在主目錄中安裝PHP然後在此處安裝擴(kuò)展名來完成。但是,這種方法需要更多的技術(shù)知識,並且可能不適合所有用戶。

    >

    有哪些常見的PHP擴(kuò)展名?它們做了什麼?

    >

    有許多可用的PHP擴(kuò)展名PHP語言的其他功能。一些常見的擴(kuò)展名包括用於與MySQL數(shù)據(jù)庫進(jìn)行交互的mysqli,用於創(chuàng)建和操縱圖像文件的GD以及用於製作HTTP請求的捲曲。 >

以上是如何從源安裝PHP擴(kuò)展的詳細(xì)內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

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

對基於PHP的API進(jìn)行版本控制的最佳實(shí)踐是什麼? 對基於PHP的API進(jìn)行版本控制的最佳實(shí)踐是什麼? Jun 14, 2025 am 12:27 AM

基於toversionaphp,useUrl deuseUrl specteringforclarityAndEsofRouting,單獨(dú)的codetoavoidConflicts,dremecateOldVersionswithClearCommunication,andConsiderCustomHeadeSerlySerallyWhennEnncelsy.startbyplacingtheversionIntheUrl(E.G.,epi/api/v

如何在PHP中實(shí)施身份驗(yàn)證和授權(quán)? 如何在PHP中實(shí)施身份驗(yàn)證和授權(quán)? Jun 20, 2025 am 01:03 AM

tosecurelyhandleauthenticationandationallizationInphp,lofterTheSesteps:1.AlwaysHashPasswordSwithPassword_hash()andverifyusingspasspassword_verify(),usepreparedStatatementStopreventsqlineptions,andStoreSeruserDatain usseruserDatain $ _sessiveferterlogin.2.implementrole-2.imaccessccsccccccccccccccccccccccccc.

PHP中的程序和麵向?qū)ο蟮木幊坦?fàn)例之間有什麼區(qū)別? PHP中的程序和麵向?qū)ο蟮木幊坦?fàn)例之間有什麼區(qū)別? Jun 14, 2025 am 12:25 AM

procemal and object-tiriendedprogromming(oop)inphpdiffersimplessintustructure,可重複使用性和datahandling.1.procedural-Progrogursmingusesfunctimesfunctionsormanized sequalized sequalized sequiential,poiperforsmallscripts.2.OpporganizesCodeOrganizescodeOdeIntsocloceSandObjects,ModelingReal-Worlden-Worlden

PHP中有哪些弱參考(弱圖),何時(shí)有用? PHP中有哪些弱參考(弱圖),何時(shí)有用? Jun 14, 2025 am 12:25 AM

PHPdoesnothaveabuilt-inWeakMapbutoffersWeakReferenceforsimilarfunctionality.1.WeakReferenceallowsholdingreferenceswithoutpreventinggarbagecollection.2.Itisusefulforcaching,eventlisteners,andmetadatawithoutaffectingobjectlifecycles.3.YoucansimulateaWe

如何在PHP中安全地處理文件上傳? 如何在PHP中安全地處理文件上傳? Jun 19, 2025 am 01:05 AM

要安全處理PHP中的文件上傳,核心在於驗(yàn)證文件類型、重命名文件並限制權(quán)限。 1.使用finfo_file()檢查真實(shí)MIME類型,僅允許特定類型如image/jpeg;2.用uniqid()生成隨機(jī)文件名,存儲至非Web根目錄;3.通過php.ini和HTML表單限製文件大小,設(shè)置目錄權(quán)限為0755;4.使用ClamAV掃描惡意軟件,增強(qiáng)安全性。這些步驟有效防止安全漏洞,確保文件上傳過程安全可靠。

如何與PHP的NOSQL數(shù)據(jù)庫(例如MongoDB,Redis)進(jìn)行交互? 如何與PHP的NOSQL數(shù)據(jù)庫(例如MongoDB,Redis)進(jìn)行交互? Jun 19, 2025 am 01:07 AM

是的,PHP可以通過特定擴(kuò)展或庫與MongoDB和Redis等NoSQL數(shù)據(jù)庫交互。首先,使用MongoDBPHP驅(qū)動(dòng)(通過PECL或Composer安裝)創(chuàng)建客戶端實(shí)例並操作數(shù)據(jù)庫及集合,支持插入、查詢、聚合等操作;其次,使用Predis庫或phpredis擴(kuò)展連接Redis,執(zhí)行鍵值設(shè)置與獲取,推薦phpredis用於高性能場景,Predis則便於快速部署;兩者均適用於生產(chǎn)環(huán)境且文檔完善。

PHP中==(鬆散比較)和===(嚴(yán)格的比較)之間有什麼區(qū)別? PHP中==(鬆散比較)和===(嚴(yán)格的比較)之間有什麼區(qū)別? Jun 19, 2025 am 01:07 AM

在PHP中,==與===的主要區(qū)別在於類型檢查的嚴(yán)格程度。 ==在比較前會(huì)進(jìn)行類型轉(zhuǎn)換,例如5=="5"返回true,而===要求值和類型都相同才會(huì)返回true,例如5==="5"返回false。使用場景上,===更安全應(yīng)優(yōu)先使用,==僅在需要類型轉(zhuǎn)換時(shí)使用。

如何在PHP( - , *, /,%)中執(zhí)行算術(shù)操作? 如何在PHP( - , *, /,%)中執(zhí)行算術(shù)操作? Jun 19, 2025 pm 05:13 PM

PHP中使用基本數(shù)學(xué)運(yùn)算的方法如下:1.加法用 號,支持整數(shù)和浮點(diǎn)數(shù),也可用於變量,字符串?dāng)?shù)字會(huì)自動(dòng)轉(zhuǎn)換但不推薦依賴;2.減法用-號,變量同理,類型轉(zhuǎn)換同樣適用;3.乘法用*號,適用於數(shù)字及類似字符串;4.除法用/號,需避免除以零,並註意結(jié)果可能是浮點(diǎn)數(shù);5.取模用%號,可用於判斷奇偶數(shù),處理負(fù)數(shù)時(shí)餘數(shù)符號與被除數(shù)一致。正確使用這些運(yùn)算符的關(guān)鍵在於確保數(shù)據(jù)類型清晰並處理好邊界情況。

See all articles