o-g-r
@o-g-r (yamada hanako)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

cakephp PHPバージョン5.6から7.2へ

Q&A

Closed

解決したいこと

バージョンを上げることで、クラスでObjectが使用できなくなったため、
object → CakeObjectに変更した際に、表示されるようになりました。
他でCakeObjectは使用していません。
CakeObjectを継承しているところはあります。

例)

発生している問題・エラー

Fatal error: Cannot declare class CakeObject, because the name is already in use in /var/www/html/cake/libs/object.php on line 33

自分で試したこと

CakeObjectが他で使用されていないか確認しましたが問題ありませんでした。

0

1Answer

requireメソッドやincludeメソッドで複数回読み込まれていませんか?
下記のMain.phpを実行すると同じようなエラーが発生します。
require_onceメソッドやinclude_onceメソッドにすると、ファイルがすでに読み込まれている場合は読み込まれないので、エラーが発生しません。

PHP Fatal error: Cannot declare class Hoge, because the name is already in use in /workspace/Hoge.php on line 2

Hoge.php
<?php
class Hoge
{
}
Main.php
<?php
require 'Hoge.php';
require 'Hoge.php';

ご承知かもしれませんが、PHP7系はサポートされていないと思います。
確認できた一番古いバージョン(v1.3)でもPHP7.2が出るより何年も前なので。

1Like

Comments

  1. @o-g-r

    Questioner

    ありがとうございます。ソースを確認します。

Your answer might help someone💌