質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

PHPバージョン切替ができない

an205
an205

総合スコア13

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

1回答

0グッド

0クリップ

216閲覧

投稿2022/12/02 15:30

macOS manterey(12.3)に移行をしています。
PHPのバージョンの切り替えができず悩んでいます。
もし、ご存知の方がいましたらアドバイスがいただけると
とても嬉しいです。

https://qiita.com/ynack/items/ab150213f23f11a03cbc
を参考にし、
PHP環境がいくつか必要で
Homebrew 3.6.13で
php@8.0
php@7.4
php@5.6
httpd
をインストールしました。
・ターミナルで「php -v」
・localhost(phpinfo();)
で使用しているバージョンを確認するとPHP 8.0.26で表示されました。

php7.4に切替て使用したいと思い、
1)ターミナルで
brew unlink php@8.0
brew link php@7.4
echo 'export PATH="/opt/homebrew/opt/php@7.4/bin:$PATH"' >> ~/.profile
echo 'export PATH="/opt/homebrew/opt/php@7.4/sbin:$PATH"' >> ~/.profile
source ~/.profile
php -v
で確認したところ「php7.4」になりました。

2)httpd.confを以下に書き換えました。
#184あたり
修正前:LoadModule php_module /opt/homebrew/opt/php@8.0/lib/httpd/modules/libphp.so
修正後:LoadModule php7_module /opt/homebrew/opt/php@7.4/lib/httpd/modules/libphp7.so

#538あたり
修正前:
<IfModule php_module>
PHPINIDir /opt/homebrew/etc/php/8.0/
</IfModule>

修正後:
<IfModule php7_module>
PHPINIDir /opt/homebrew/etc/php/7.4/
</IfModule>

3)ターミナルで
sudo -s apachectl restart
apache を再起動し
localhostで確認したところ
phpが動いてない(ソースを見ると「echo 'テスト';」や「phpinfo();」が直接表示されてしまっている)

httpd.confの書き方が原因かと思い
<IfModule php7_module>」を「<IfModule php_module>
などいくつか試してみましたがターミナルでエラーが表示されてしまうので
上記に記載しているのが正しいと思っています。

※まだphp@5.6のテストはしていません。
※phpの3つのバージョンが切り替えるようになったらmysqlをインストールしていきたいと思っています。

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答1

0

自己解決

切替ができました。
切替方法は、
「ターミナルで切替しない」
でした。
手順は
1)httpd.confを書換
2)ターミナルでapacheを再起動
3)localhostで「phpinfo();」phpの切替えたバージョンが確認できる。
※php8.0、7.4、5.4 をそれぞれ上記のやり方で切替ができました。

投稿2022/12/08 01:13

an205

総合スコア13

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。