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

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

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

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

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

MAMP

Mac 上で WordPress などの動的ページのサイトが作れるように環境を構築するフリーソフト

Q&A

解決済

1回答

1828閲覧

MAMP XAMMP PHPバージョン変更し CMSを起動させたい

KoTT

総合スコア19

PHP

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

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

MAMP

Mac 上で WordPress などの動的ページのサイトが作れるように環境を構築するフリーソフト

0グッド

1クリップ

投稿2020/06/27 06:51

編集2020/06/29 23:31

やりたいこと:CMS concrete5(ver5.6.5.7/php5.6)をローカル環境で動作させたい
PC:Windows10

1.MAMP_4.2.0をインストール
2.起動確認
3.起動終了
4.phpのバージョンを5.6にする
ディレクトリ、MAMP\bin\php
php5.6.0, php5.3.23 以外に「アンダーバー追加」

5.起動
6.アプリは立ち上がるが、ApacheもMySQLもスタートしない

php_error.logに以下のようなエラーがでていましたが、関係があるのかよくわかりません。
///[27-Jun-2020 06:42:54 UTC] PHP Warning: mysqli_connect(): (HY000/2002): �Ώۂ̃R���s���[�^�[�ɂ���ċ��ۂ��ꂽ���߁A�ڑ��ł��܂���ł����B in Command line code on line 1 [27-Jun-2020 06:42:54 UTC] PHP Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in Command line code on line 1 [27-Jun-2020 06:42:54 UTC] PHP Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, null given in Command line code on line 1 [27-Jun-2020 06:42:54 UTC] PHP Warning: mysqli_close() expects parameter 1 to be mysqli, boolean given in Command line code on line 1


Window10とMAMPの相性が悪いとアドバイスをいただきXAMMPで検証

1.XAMMP_x64-7.4.7をインストール
2.https://qiita.com/maniwac/items/a76fab2e03a655f22e6a
に従って、concrete5 5.6.5.7(現在公開しているサイトで使用中のバージョン) を
インストールし、my.int/php.iniをカスタマイズ

3.HTTP ERROR 500エラー
/// 、"PHP Fatal error: Cannot use Concrete\Core\Foundation\Object as Object because 'Object' is a special class name"

4.XAMMPを一端アンイストールし、ダウングレード版 XAMMP-win32-5.6.36(php5.6)をインストール

5.HTTP ERROR 500エラー
/// PHP Fatal error: Class 'Symfony\Component\ClassLoader\Psr4ClassLoader' not found in C:\xampp\htdocs\concrete5\concrete\src\Foundation\ClassLoader.php on line 227 PHP Warning: include(C:/xampp/htdocs/concrete5/application/bootstrap/autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\concrete5\concrete\bootstrap\autoload.php on line 8 PHP Warning: include(): Failed opening 'C:/xampp/htdocs/concrete5/application/bootstrap/autoload.php' for inclusion (include_path='C:\xampp\htdocs\concrete5\concrete\vendor;C:\xampp\php\PEAR') in C:\xampp\htdocs\concrete5\concrete\bootstrap\autoload.php on line 8 PHP Fatal error: Class 'Symfony\Component\ClassLoader\Psr4ClassLoader' not found in C:\xampp\htdocs\concrete5\concrete\src\Foundation\ClassLoader.php on line 227 PHP Warning: include(C:/xampp/htdocs/concrete5/application/bootstrap/autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\concrete5\concrete\bootstrap\autoload.php on line 8 PHP Warning: include(): Failed opening 'C:/xampp/htdocs/concrete5/application/bootstrap/autoload.php' for inclusion (include_path='C:\xampp\htdocs\concrete5\concrete\vendor;C:\xampp\php\PEAR') in C:\xampp\htdocs\concrete5\concrete\bootstrap\autoload.php on line 8 PHP Fatal error: Class 'Symfony\Component\ClassLoader\Psr4ClassLoader' not found in C:\xampp\htdocs\concrete5\concrete\src\Foundation\ClassLoader.php on line 227 PHP Warning: include(C:/xampp/htdocs/concrete5/application/bootstrap/autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\concrete5\concrete\bootstrap\autoload.php on line 8 PHP Warning: include(): Failed opening 'C:/xampp/htdocs/concrete5/application/bootstrap/autoload.php' for inclusion (include_path='C:\xampp\htdocs\concrete5\concrete\vendor;C:\xampp\php\PEAR') in C:\xampp\htdocs\concrete5\concrete\bootstrap\autoload.php on line 8 PHP Fatal error: Class 'Symfony\Component\ClassLoader\Psr4ClassLoader' not found in C:\xampp\htdocs\concrete5\concrete\src\Foundation\ClassLoader.php on line 227 PHP Warning: include(C:/xampp/htdocs/concrete5/application/bootstrap/autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\concrete5\concrete\bootstrap\autoload.php on line 8 PHP Warning: include(): Failed opening 'C:/xampp/htdocs/concrete5/application/bootstrap/autoload.php' for inclusion (include_path='C:\xampp\htdocs\concrete5\concrete\vendor;C:\xampp\php\PEAR') in C:\xampp\htdocs\concrete5\concrete\bootstrap\autoload.php on line 8 PHP Fatal error: Class 'Symfony\Component\ClassLoader\Psr4ClassLoader' not found in C:\xampp\htdocs\concrete5\concrete\src\Foundation\ClassLoader.php on line 227

phpのバージョン ダウングレードだけではうまくいかなかった

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kazto

2020/06/27 07:38

ご使用のOSはWindowsでしょうか?WindowsとMAMPの相性は非常に悪いです。XAMPPを代わりにインストールすることを強くお勧めします。
KoTT

2020/06/27 07:48

Windows10です。Xammpを入れたのですが、いまいち設定方法がわからなかったので、 Mampにしました。。。XAMPPのほうがよいのでしょうか??
miyabi_takatsuk

2020/06/27 08:07 編集

XAMPPの方が120%いいです。 MAMPでやろうとするより、 XAMPPでなんとかする方が、遥かに早く済むかと。
miyabi_takatsuk

2020/06/27 08:09

ちなみに、XAMPPで複数PHPバージョンをやるには、複数のXAMPPを入れちゃうのが手っ取り早いです。 (もちろん一個でもやる方法があるが、けっこうめんどい)
KoTT

2020/06/27 08:58

ありがとうございます。 承知しました。XAMPPでやってみます。phpのバージョンは5.6一択でやろうと思います。
m.ts10806

2020/06/27 10:51

>phpのバージョンは5.6一択で なぜでしょうか? 学習目的ならサポート終了しているバージョンは悪手でしかありません。
KoTT

2020/06/27 11:51

Concrete5 ver5.6というCMSをつかっており、そのphp内のObject という技術がphp.7でひっかかったので、5.6に落としたらうまくいくかなと思ったので、落としました。
m.ts10806

2020/06/27 11:56

その前程は書かれないと誰も分かりません。追記してください。 ただ、8系はPHP7以降のみサポートのようですし https://concrete5-japan.org/help/5-7/developer/installation/system-requirements/ PHP自体のサポートが切れたバージョンを利用するということは セキュリティリスクに晒され続けるということ。 何かあっても対応はされないということになります。 使い続けるメリットは皆無かと思いますが・・・。 一応、バージョンアップさせるつもりで、互換性を調査した方が良いように思います。
m.ts10806

2020/06/27 12:04 編集

しかし、どの何のObjectのことか知らないですが、Object自体は普通にPHP5でも使われている技術なので、 https://www.php.net/manual/ja/oop5.intro.php それとは直接は関係ないんじゃないかなと
KoTT

2020/06/29 02:37 編集

HTTP ERROR 500がでるのでログをみてみると、"PHP Fatal error: Cannot use Concrete\\Core\\Foundation\\Object as Object because 'Object' is a special class name"とあったので、phpのバージョンをさげないといけないのかな、、と考えたのですが、、、
miyabi_takatsuk

2020/06/29 02:39

KoTTさん > そこの部分も質問文に含めましょう。 もしかしたら、併せた回答を得られるかもしれません。 (PHPのバージョン別で使える・使えないメソッドの事も含めて)
guest

回答1

0

ベストアンサー

エラーメッセージについて

"PHP Fatal error: Cannot use Concrete\Core\Foundation\Object as Object because 'Object' is a special class name"

PHP - 予約語の一覧

object (PHP 7.2 以降)

とあり、PHP7.2以降でそのクラス名を使用することはできません。
使用できないクラス名を concrete5 5.6.5.7 のコアライブラリで使用しているのでエラーになっています。

そのため、その時点での「PHPをダウングレードしよう」というアプローチは正解です。
が、、、

おそらく本来やるべきこと

concrete5 5.6.5.7(現在公開しているサイトで使用中のバージョン)

とのことですので、すでに本番化されているシステムが存在していることと思います。
それに対して修正を行いたい、そのためのローカル環境を構築したいのだと考えます。

やるべきは本番環境とすべてのバージョンを合わせたものでインストールを行うことです。
PHPバージョンも合わせるので、本番環境で使用してるPHPバージョンを確認し、そのバージョンに沿ったXAMMPで改めてお試しください。

今後ローカルで修正したものを本番化した際にも思わぬ不具合が発生することでしょう。

my.int/php.iniをカスタマイズ

設定ファイルや、他にも使用しているライブラリもです。

余談

concrete5 とても把握しづらいですね。
5 が商品名なのか、商品のバージョンなのかなどで混乱しますね。

mtsさんがリンクに出しているバージョン要件バージョン7 動作要件
ver.5.7.x のことで、メジャーバージョンを指してないですし。
ちなみにこちらでは PHP5.6が動作可能とありますが、

今回の質問で使用する concrete5 5.6.5.7 とは違います。

concrete5 バージョン5.6以前用のドキュメント
から、「インストール・アップグレード」=>「使用条件」で要件の記述があるかなと思ったらリンク切れしてました。
そのため本来の必要なPHPバージョンは不明です。
これは concrete5 のフォーラムでお問い合わせください。
関連リンクで、必須:PHP5.2 という画像はありました。

その後やるべきこと

concrete5 の バージョン8以降にアップグレード です。

バージョン要件でも、以下の記述があります。
ここでいう バージョン7concrete5 5.7.x系 のことです。

バージョン7 動作要件
注:concrete5 5.7.xサイトをバージョン8以降にアップグレードすることを強くお勧めします。

みなさんが「質問への追記・修正の依頼」でもセキュリティリスクは指摘していますね。

既存システムのバージョンアップ・リプレースはとても大変です。
アサインされている状況はお察ししますが頑張ってください。

質問をする場所について

concrete5 ではフォーラムが用意されているので、そちらで質問されることをおすすめします。
全員が concrete5 関係者なので、より多くの方が質問に答えてくれることでしょう。

それ以外( concrete5 特化以外)のプログラミング関連の質問があればまたここで質問していただければと思います。

投稿2020/07/02 04:38

bracket_i

総合スコア193

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問