Homebrew學習及mac下升級php7問題

Anumbrella發表於2017-02-22

最近在thinkphp官網看到tp5更新,據說搭載php7後效能提升一大截。。為了學習一下,準備更新一下php。

我使用的是mac,原本的php版本是mac自帶的,版本是5.5的。然後開始升級。

查閱資料,基本都是推薦Homebrew來安裝。那Homebrew是什麼的東東?下面來學習一下Homebrew。

1、Homebrew是什麼?

我們知道在Linux下安裝軟體不像Windows下面那樣,傻瓜式一步一步點選。Linux或者類Unix系統,安裝都是通過軟體包依賴,比如Red hat有yum,Ubuntu有apt-get。而mac下使用的就是Homebrew,簡稱brew。是Mac OSX上的軟體包管理工具,能在Mac中方便的安裝軟體或者解除安裝軟體,等同於apt-get、yum一樣。。

比如Homebrew官網,它的介紹是“The missing package manager for macOS”,macOS的缺少軟體包管理器。

2、安裝Homebrew。

知道了Homebrew(以下簡稱brew)是什麼後,我們就可以使用它了。如何安裝,很簡單,一行命令。安裝需要ruby,而Mac系統上已經預設安裝了ruby。
注意:安裝前需要有這些東西

注意

Intel的cpu、10.10以上系統、Xcode、shell


安裝命令:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

3、Homebrew的使用。

用法


下面的Homebrew文件翻譯來自beyond__devil的部落格,作者那個太亂了,自己整理總結了一下,方便以後使用。

brew –version // brew的版本概要

brew command [–verbose|-v] [options] [formula] …
// brew的命令格式:brew 命令 [詳情] [可選引數] [具體檢視的軟體名]

essential commands - 基本命令(重要命令)

使用 ‘–verbose | -v’ 選項,許多命令可以列印出額外的除錯資訊。注意:這個選項,必須放在命令後面(例如:brew install -v git)

install 軟體名 // 安裝軟體

remove 軟體名 // 解除安裝軟體

update // 通過Git從github上獲取最新版本的homebrew

list // 列出全部安裝的軟體

search text|/text/
// 執行一個軟體名子串的搜尋。支援2種:1.字串;2.正則,以’//’包圍。注意:search命令,傾向線上搜尋一些受歡迎的軟體(例如:github上評分較高的等),如果沒有搜尋到,才會列出本地搜尋到的軟體。(例如:brew search /wge*/)

commands - 命令列表

1.audit [–strict] [–online] [軟體名] //審查[某個軟體]

  • Homebrew審查軟體的編碼風格是否符合規範,應該在提交一個軟體之前執行此命令來進行檢查
  • 如果沒有提供 ‘軟體名’,則所有的軟體都會被檢查
  • 使用 ‘–strict’ 選項,會執行額外的檢查(更嚴格)。建立新軟體時應該使用
  • 使用 ‘–online’ 選項,會執行額外的慢檢查(需要一個網路連線)。建立新軟體時應該使用
  • 執行audit命令,出現錯誤時,會以一個 ‘非0’ 的狀態退出!這是非常有用的,例如:實現預提交

2.cat 命令 //顯示命令的來源(github的來源,或者其他來源)

3.cleanup [–prune=days] [–dry-run] [-s] [軟體名]

  • 針對所有或指定的某個已安裝的軟體,從 ‘Cellar’資料夾中移除所有舊版本。另外,從homebrew下載快取中,刪除所有的舊版本的下載包
  • 指定 ‘–prune=days’ 選項,移除指定日期之前的所有快取檔案
  • 指定 ‘–dry-run | -n’ 選項,顯示哪些檔案將會被移除,但並不實際操作
  • 指定 ‘-s’ 選項,移除快取,刪除下載包,甚至是軟體最新版本的下載包(有些還未安裝,就會被刪除)。注意:對於任何已安裝軟體的下載包,並不會被刪除。如果你也想刪除這些,使用命令:’rm -rf $(brew –cache)’

4.commands [–quiet [–include-aliases]]

  • 顯示內建的&外部的命令列表
  • 指定 ‘–quiet’ 選項,僅僅列出命令的名稱,沒有頭部(header)
  • 指定 ‘–quiet –include-aliases’ 選項,外部命令的別名也會被顯示出來

5.config
//顯示 homebrew&系統 除錯的有用的配置資訊。如果你提交一個錯誤報告,你可能會被要求提供這方面的資訊

6.create URL [–autotools | –cmake] [–no-fetch] [–set-name name] [–set-version version]

  • 生成一個軟體的可下載檔案的URL,並在編輯器中開啟。Homebrew將嘗試自動獲取軟體名和版本,但是如果失敗,則需要你提供你自己的模板
  • 指定 ‘–autotools’ 選項,建立一個 ‘Autotools-style’ 風格的基本模板, ‘–cmake’,建立一個 ‘CMake-style’ 風格的基本模板
  • 指定 ‘–no-fetch’ 選項,Homebrew將不會下載URL到快取中,也因此不會對軟體新增’SHA256’
  • ‘–set-name’ & ‘–set-version’ 選項,允許你明確的設定你建立的包的名字和版本

7.deps [–1] [-n] [–union] [–tree] [–all] [–installed] [–skip-build] [–skip-optional] 軟體名(可多個軟體名引數)

  • 顯示軟體的依賴包。當傳遞了 ‘多個軟體名引數’,只會顯示這些軟體共有的依賴包(除非我們傳遞了 ‘–tree’ | ‘–all’ | ‘–installed’,這幾個選項,會列出每個軟體各自的依賴包)
  • 指定 ‘–1’ 選項,僅僅顯示一級依賴包,而不會向下遞迴查詢依賴
  • 指定 ‘-n’ 選項,顯示拓撲順序的依賴關係
  • 指定 ‘–union’ 選項,顯示軟體的聯合的依賴關係,而不是交集
  • 指定 ‘–tree’ 選項,顯示樹形結構的依賴關係
  • 指定 ‘–all’ 選項,顯示所有軟體的依賴關係
  • 指定 ‘–installed’ 選項,顯示所有已安裝軟體的依賴關係
  • deps命令,預設顯示軟體的依賴關係,指定 ‘–stip-build’ 選項,跳過 ‘構建型別的依賴關係(只顯示可選的依賴??不懂)’ | 指定 ‘–skip-optional’ 選項,跳過 ‘可選的依賴關係’

8.desc 軟體名 //顯示軟體名稱&一行描述

9.desc [-s | -n | -d] pattern

  • 指定 ‘-s’ 選項,在 ‘name’&’description’ 搜尋
  • 指定 ‘-n’ 選項,只在 ‘name’ 搜尋
  • 指定 ‘-d’ 選項,只在 ‘description’ 搜尋
  • pattern支援兩種方式:1.文字;2.正則,使用 ‘//’ 包圍
  • 軟體的描述會被快取,快取會在第一次搜尋時建立,使得第一次搜尋相對較慢

10.diy [–name=name] [–version=version]

  • 自動確定 ‘非Homebrew’ 軟體的安裝字首,使用該命令的輸出,你可以將你自己的軟體安裝到 ‘Cellar’ 中,之後連結它到Homebrew的連結字首(也就是可以用Homebrew這套機制吧)
  • ‘–name’&’–version’選項,允許明確設定你正在安裝的包的名字和版本

11.doctor
//檢測系統潛在的問題,如果發現問題,該命令會以一個 ‘非0’ 的狀態退出

12.edit //開啟所有的Homebrew,進行編輯

13.edit 軟體名 //在編輯器中開啟軟體

14.fetch [–force] [-v] [–devel | –HEAD] [–deps] [–build-from-source | –force-bottle] 軟體名

  • 下載給定軟體名的原始碼包,對於tar壓縮包,也會列印 ‘SHA-1’&’SHA-256’ 校驗
  • 指定 ‘–HEAD’| ‘–devel’ 選項,獲取 ‘最新版’ 而非 ‘穩定版’
  • 指定 ‘-v’ 選項,如果URL代表一個VCS,進行一個詳細的VCS檢出。當一個存在的VCS快取被更新,這會很有用(VCS就是版本控制程式,獲取更新提交的檔案)
  • 指定 ‘–force’ 選項,移除之前快取的版本,重新獲取新的
  • 指定 ‘–deps’ 選項,’也’ 會下載所有列出軟體的依賴(也,表示不僅下載軟體,也下載軟體的依賴)
  • 指定 ‘–build-from-source’ 選項,下載原始碼而不是安裝包?
  • 指定 ‘–force-bottle’ 選項,如果OS X已經存在當前版本,仍舊下載。即使在安裝過程中,還未使用。

15.home //在瀏覽器中開啟 ‘Homebrew’ 的主頁

16.home 軟體名 //在瀏覽器中開啟 ‘軟體’ 的主頁

17.info 軟體名 //顯示軟體的相關資訊

18.info –github 軟體名
//開啟軟體在github上的歷史頁面,檢視軟體的本地歷史,使用:brew log -p 軟體名

19.info –json=version (–all | –installed | 軟體名)

  • 列印軟體的json表示,目前version只支援 ‘v1’
  • 指定 ‘–all’ 選項,獲取所有軟體的資訊
  • 指定 ‘–installed’ 選項,獲取已安裝的所有軟體的資訊

20.install [–debug] [–env=std | super] [–ignore-dependencies] [–only-dependencies] [–cc=compiler] [–build-from-source | –force-bottle] [–devel | –HEAD] 軟體名

  • 安裝軟體的詳細引數,軟體名可被指定為幾種不同的方式,檢視 ‘specifying formulae’
  • 指定 ‘–debug’ 選項,當brew失敗時,在臨時構建的目錄中,開啟一個訪問IRB|shell的互動式的除錯會話
  • 指定 ‘–env=std’ 選項,使用 ‘標準構建環境’ 代替 ‘super環境’
  • 指定 ‘–env=super’ 選項,使用 ‘super環境’,即使 軟體本身指定了 ‘標準構建環境’
  • 指定 ‘—ignore-dependencies’ 選項,跳過軟體的任何依賴的安裝。如果這些依賴並不存在,軟體將可能安裝失敗
  • 指定 ‘–only-dependencies’ 選項,只安裝軟體的依賴,而不安裝軟體自身
  • 指定 ‘–cc=compiler’ 選項,嘗試使用 ‘compiler’ 編譯。’compiler’ - 具體的編譯器,例如:gcc-4.2等
  • 指定 ‘–build-from-source’ 選項,即使提供了軟體的 ‘bottle’ 版,也從原始碼編譯安裝
  • 指定 ‘–force-bottle’ 選項,即使已經給出了自定義的安裝選項,如果軟體的 ‘bottle版’ 存在,強制安裝 ‘bottle版’
  • 指定 ‘–devel’ 選項,軟體定義了 ‘devel版’,安裝 ‘devel版’(開發版)
  • 指定 ‘–HEAD’ 選項,軟體定義了 ‘HEAD版’,安裝 ‘HEAD版’(最新版,又名:master, trunk, unstable)
  • 為了安裝 ‘HEAD版’ 中更新版本(是這樣麼,看後面的命令,也僅僅是安裝head版啊),使用 ‘brew rm 軟體名 && brew install –HEAD 軟體名’

21.install –interactive [–git] 軟體名

  • 下載並修補軟體,接著開啟一個shell。這允許使用者執行’./configure –help’,同時除此以外,還可以確定如何將一個軟體包轉換為一個 ‘Homebrew軟體’
  • 指定 ‘–git’ 選項,Homebrew將建立一個Git倉庫,對於建立軟體的補丁很有幫助

22.irb [–examples]

  • 進入互動的 ‘Homebrew Ruby shell’
  • 指定 ‘–example’ 選項,將顯示幾個示例

23.leaves
//顯示已安裝的軟體(並不依賴另外的已安裝軟體),可理解為 ‘獨立的軟體’。leaves並非離開,而是leaf(葉子)的複數形式,表示分支結構中最尖端的軟體,所以不會依賴其他軟體

24.ln(簡寫),link [–overwrite] [–dry-run] [–force] 軟體名

  • 連結軟體的所有安裝檔案到 ‘Homebrew prefix’,當你安裝軟體時,這個會自動完成,但是對於DIY安裝是非常有用的
  • 指定 ‘–overwrite’ 選項,當連結時,Homebrew將刪除 ‘Homebrew prefix’ 中已經存在的檔案,會重新生成連結檔案
  • 指定 ‘–dry-run | -n’ 選項,Homebrew將列出所有將要生成連線的檔案,並不會真正執行。獲取傳遞了 ‘–overwrite’ 選項,將會列出要刪除的檔案,但並不會真正刪除
  • 指定 ‘–force’ 選項,Homebrew將允許keg-only軟體被連結(預設情況下,keg-only不能被連結)

25.ls,list [–full-name]

  • 列出所有已安裝的軟體
  • 指定 ‘–full-name’ 選項,列印軟體的全稱

26.ls,list –unbrewed
//列出所有 ‘Homebrew prefix’ 中並未通過 Homebrew 進行安裝的檔案!!

27.ls,list [–version [–multiple]] [–pinned] [軟體名]

  • 指定了 ‘軟體名’,會列出軟體已安裝的檔案
  • 指定 ‘–verbose’ 選項,會遞迴列出,每個軟體的所有子模目錄的內容
  • 指定 ‘–version’ 選項,顯示所有已安裝軟體的版本號
  • 指定 ‘–version 軟體名’,只顯示該軟體的版本號
  • 指定 ‘–version –multiple’ 選項,只顯示多版本安裝的軟體
  • 指定 ‘–pinned’ 選項,列出 ‘pinned 軟體’的版本

28.log [git-log-options] 軟體名 … (可多個軟體)

  • 顯示指定軟體的git log日誌
  • 指定 ‘git-log-options’ 選項,應該是日誌本身的選項

29.missing [軟體名]
//檢查指定軟體的丟失的依賴!如果沒有提供 ‘軟體名’,檢查所有通過brew安裝的軟體

30.migrate [–force] 軟體名

  • 將重新命名的包命名為新的名字,針對軟體的包名字為舊名稱
  • 指定 ‘–force’ 選項,將處理已安裝的軟體&指定的軟體,就像它們來自相同的taps(補丁),並遷移它們

31.options [–compact] (–all | –installed | 軟體名)

  • 顯示指定的軟體的安裝引數
  • 指定 ‘–compact’ 選項,在一個已空格分隔的單行上,顯示所有的選項
  • 指定 ‘–all’ 選項,顯示所有軟體的選項
  • 指定 ‘–installed’ 選項,顯示所有已安裝軟體的選項

32.outdated [–quiet | –verbose | –json=v1]

  • 顯示有一個可更新版本的軟體列表
  • 預設情況下,版本資訊將顯示在互動的外殼中,並在其他情況下被抑制
  • 指定 ‘–quiet’ 選項,只顯示軟體列表的名稱(優先於 –verbose 選項)
  • 指定 ‘–verbose’ 選項,展示詳細的版本資訊
  • 指定 ‘–json=version’ 選項,輸出格式為json。有效的版本目前只能是 ‘v1’

33.pin 軟體名
//’pin’(鎖,訂,把…別住,可理解為:不允許改動軟體)指定的軟體,當釋出brew升級命令,阻止軟體被更新

34.unpin 軟體名
//’unpin’(與pin相反,解鎖軟體),發不brew升級命令,允許軟體被更新

35.prune [–dry-run]

  • 從 ‘Homebrew prefix’ 中,移除無效的符號連結。通常不需要,但是當執行了DIY安裝時,會非常有用
  • 指定 ‘–dry-run | -n’ 選項,只顯示哪些連結會被移除,並不會執行真正的刪除

36.reinstall 軟體名 //先解除安裝,再安裝軟體

37.rm, remove, uninstall [–force] 軟體名

  • 解除安裝軟體
  • 指定 ‘–force’ 選項,如果軟體安裝了多個版本,移除所有的安裝版本

38.search,-S
//展示所有本地通過brew安裝的軟體(包括:打補丁(tapped)的軟體)。當沒有傳遞引數,不會執行線上(online)搜尋

39.search,-S text | /text/
//執行一個軟體名子串的搜尋。支援2種:1.字串;2.正則,以’//’包圍。注意:search命令,傾向線上搜尋一些受歡迎的軟體(例如:github上評分較高的等),如果沒有搜尋到,才會列出本地搜尋到的軟體

40.search (–debian | –fedora | –fink | –macports | –opensuse | –ubantu) text
//在指定的包管理器的列表中搜尋

41.sh [–env=std]
//例項化一個Homebrew構建環境。使用我們的 ‘years-battle-hardened’ Homebrew構建邏輯幫助你 ./configure && make && make install 或者 甚至你的gem安裝成功。如果你執行 Homebrew,在一個僅配置了Xcode的環境中,由於它新增了工具(例如:建立你的PATH),否則編譯系統會找不到

42.switch name version
//連結指定名稱的具體版本到 ‘Homebrew prefix’

43.tap
//顯示所有已安裝的taps列表

44.tap [–full] user/repo [URL]

  • 查詢軟體的遠端倉庫
  • 未指定URL,通過https從github上查詢軟體倉庫。由於有如此多的taps存在於github上,這個命令是一個捷徑:tap / => https://github.com//homebrew-
  • 如果指定了URL,將會從任意位置,使用各種傳輸協議,只要是git支援的方式,tap一個命令倉庫。1個引數形式的tap最簡單,但是有限制。2個引數的命令不會假定,因此taps可以從任意位置,任意協議克隆得到。而不是僅從github&https協議得到。
  • 預設情況,倉庫被克隆作為一個淺層副本(–depth=1),指定 ‘–full’ 選項,將會使用一個完全克隆!

45.tap –repair
//遷移tapped軟體,從基於符號連結結構,到基於目錄結構

46.tap –list-official
//列出所有官方的taps

47.tap –list-pinned
//列出所有pinned(鎖定)的taps

48.tap-info tap(補丁名)
//顯示tap的相關資訊

49.tap-info –json=version (–installed | taps)

  • 列印taps的json格式,當前版本僅僅能接受的值是 ‘v1’
  • 指定了 ‘–installed’ 選項,獲取所有已安裝的taps資訊

50.tap-pin tap
//pin tap(鎖定tap),使它的軟體優先於使用者提供的軟體

51.tap-unpin tap
//unpin tap(解鎖tap),使它的軟體不在優先

52.test [–devel | –HEAD] [–debug] 軟體名

  • 一部分軟體提供了一個測試方法。’brew test 軟體名’ 執行測試方法。沒有標準的輸出或返回碼,但是它通常會提示使用者,安裝的軟體存在錯誤。
  • 指定 ‘–devel | –HEAD’ 選項,用於測試軟體的 ‘開發版’ 或 ‘HEAD版’
  • 指定 ‘–debug’ 選項,當測試失敗,在臨時構建的目錄中,開啟一個訪問IRB|shell的互動式的除錯會話

53.unlink [–dry-run] 軟體名

  • 從 ‘Homebrew prefix’ 中刪除軟體的符號連結。這對於臨時禁用一個軟體很有幫助:’brew unlink 軟體名 && commands && brew link 軟體名’
  • 指定 ‘–dry-run | -n’ 選項,將會列出所有將要刪除的檔案,但是並不會真正執行刪除

54.unpack [–git | –patch] [–destdir=path] 軟體名

  • 解壓軟體的原始碼到當前工作目錄的子目錄。
  • 指定 ‘–destdir=path’ 選項,子目錄將被建立為給定的目錄名
  • 指定 ‘–patch’ 選項,軟體的patches(補丁)將會被應用到解壓到原始碼中
  • 指定 ‘–git’ 選項,git倉庫將會被初始化到解壓的原始碼中。這對於建立軟體的patches(補丁)很有用

55.untap tap //移除一個tap倉庫

56.update [–rebase]

  • 通過git獲取 ‘Homebrew’ 的最新版本,以及所有軟體的最新版從github上
  • 指定 ‘–rebase’ 選項,’git pull –rebase’ 將被呼叫

57.upgrade [install-options] [–cleanup] [軟體名]

  • 升級過時的,unpinned(未鎖定)的brew安裝的軟體
  • 安裝時的選項,在這裡也有效(升級和安裝時,都可使用軟體安裝時的引數)
  • 指定 ‘–cleanup’ 選項,將移除之前安裝的軟體所有版本
  • 指定 ‘軟體名’,僅升級指定的軟體(即使該軟體被pin-鎖定,也可以升級)

58.uses [–installed] [–recursive] [–skip-build] [–skip-optional] [–devel | –HEAD] 軟體名

  • 指定的軟體名是作為某個軟體的依賴,列出所有依賴此軟體的軟體列表。當指定了多個軟體名,顯示依賴全部指定軟體的軟體列表
  • 指定 ‘–recursive’ 選項,解決多餘一級的依賴
  • 指定 ‘–installed’ 選項,僅列出已經安裝的軟體
  • 指定 ‘–skip-build’ 選項,跳過將此軟體作為 ‘build type’ 依賴的軟體列表
  • 指定 ‘–skip-optional’ 選項,跳過將此軟體作為 ‘optional type’ 依賴的軟體列表
  • 預設,uses顯示的是穩定版軟體的使用,指定 ‘–devel | –HEAD’ 選項,顯示 ‘開發版 | HEAD版’ 軟體列表

59.–cache [軟體名]

  • 顯示 ‘Homebrew’ 的下載快取,可檢視 ‘HOMEBREW_CACHE’
  • 指定 ‘軟體名’,顯示用於快取軟體的檔案或目錄

60.–cellar [軟體名]

  • 顯示 ‘Homebrew’ 的 ‘Cellar’ 路徑。預設:(brewprefix)/Cellar
    (brew --prefix)/Cellar,如果這個目錄不存在,則為:
    (brew –repository)/Cellar
  • 指定 ‘軟體名’,顯示軟體將被安裝到 ‘Cellar’ 中的位置,沒有任何版本目錄的排序,作為最終的路徑

61.–env //顯示 ‘Homebrew’ 構建環境的一個簡介

62.–prefix [軟體名]

//顯示 ‘Homebrew’ 的安裝路徑,預設是:/usr/local

63.–repository
//顯示 ‘Homebrew’ 的 ‘.git’ 目錄路徑。對於標準安裝,’prefix’ 和 ‘repository’ 是相同的目錄

64.–version
//列印brew的版本到標準錯誤輸出並退出

更多的用法可以看官網文件

總結一下,brew的工作目錄在/usr/local/下面,下載的軟體放在Cellar(/usr/local/Cellar)檔案下,預設安裝在opt(/usr/local/opt/)目錄下。

常用的命令:
brew intstall:安裝軟體
brew uninstall: 解除安裝軟體
brew list:列出已安裝的軟體
brew update:更新brew
brew home:用瀏覽器開啟brew的官方網站
brew info:顯示軟體資訊
brew deps:顯示包依賴
brew -v: 檢視homebrew版本

4、安裝php7。

通過先前的一些介紹,我們對brew有了一定認識和了解。接下來我們就來使用brew安裝升級php。

首先來建立目錄,如果你沒有建立過該目錄,就先建立。

sudo mkdir /usr/local/var
sudo chmod 777 /usr/local/var

修改成你自己的使用者名稱和組,如果你沒有建立過該目錄

sudo mkdir /usr/local/sbin/
sudo chown -R <username>:<group> /usr/local/sbin/

(使用命令,whoami可以檢視username,group一般為wheel。例如:sudo chown -R anumbrella:wheel /usr/local/sbin/)

如果你原來使用過brew安裝php的話,先使用

brew unlink php56

php56即(php5.6版本),如果你使用的是mac自帶的php,可以忽略該命令。

接下來安裝php7.0

brew install php70 --with-apxs2  --with-apache --with-gmp --with-imap --with-tidy --with-debug

後面引數一定要帶上,如果不帶引數,直接使用brew install php70命令安裝,最後安裝成功後,沒有libphp7.so。我們無法在Apache中引用php7。
(mac 最新系統Sierra的釋出,Apache載入php的模組(libphpx.so)不再預設生成,在安裝php7的時候,要新增–with-apache引數)

安裝好過後開啟PHP70程式

brew link php70

輸入命令,檢視是否成功

php -v

上面兩條命令是原來使用過brew安裝過php後,更新php後使用,會出現php7.0版本,即安裝成功。如果第一次安裝,或者使用的mac自帶的php。。可能無法成功,可以忽略。

5、修改Apache配置檔案

開啟Apache配置檔案

sudo vim /etc/apache2/httpd.conf

將模組php5的註釋掉,新增php7的。
#LoadModule php5_module libexec/apache2/libphp5.so

LoadModule php7_module /usr/local/opt/php70/libexec/apache2/libphp7.so

注意:libphp7.so是預設安裝在/usr/local/opt/php70/libexec/apache2/目錄下的,按照你的實際情況,換成你自己的安裝路徑即可。

<IfModule php7_module>
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    <IfModule dir_module>
        DirectoryIndex index.html index.php
    </IfModule>
</IfModule>

更改配置檔案為php7_module的。。

開啟.bash_profile檔案,新增php7環境變數:

export PATH=/usr/local/opt/php70/bin:$PATH;

然後:

source .bash_profile

現在可以使用 php -v命令了。
最後重啟Apache即可,

sudo apachectl restart

相關文章