非常に奇妙なエラーがあります:
Fatal error: Access level to Acme\DemoBundle\Entity\Book::$title
must be public (as in class Acme\DemoBundle\Entity\AbstractBook) in
/var/www/html/src/Acme/DemoBundle/Entity/Book.php on line 614 Call
Stack: 0.0002 674960 1
行 614 は使用できません。最もクレイジーなことは、エンティティ フォルダー全体を IDE からローカルの ubunutu イメージに手動でアップロードすると、エラーが発生しないことです。
これは私のAbstractBookEntityです:
namespace Acme\DemoBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\MappedSuperclass
* @ORM\HasLifecycleCallbacks
*/
class AbstractBook
{
/**
* @var string $title
*
* @ORM\Column(name="title", type="string", length=45, nullable=true)
*/
public $title;
Book クラス:
namespace Acme\DemoBundle\Entity;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use Symfony\Component\Validator\Constraints as Assert;
use Doctrine\ORM\Mapping as ORM;
/**
* Acme\DemoBundle\Entity\Book
*
* @ORM\Table(name="book")
* @ORM\Entity(repositoryClass="Acme\DemoBundle\Repository\BookRepository")
*/
class Book extends AbstractBook {
アップデート:
抽象エンティティからの属性がコピーされ、拡張エンティティにプライベートとして宣言されていることを検出しましたが、どのように発生しますか?