gpt4 book ai didi

zend-framework - 教义 2 - 持续错误 - 给出警告 : spl_object_hash() expects parameter 1 to be object, null

转载 作者:行者123 更新时间:2023-12-04 06:41:32 25 4
gpt4 key购买 nike

我在 DOctrine 中创建了这样的条目。我正在尝试将篮子添加到页面。
这是我的实体:
我的实体:

<?php

namespace App\Entity;
use Doctrine\Common\Collections\ArrayCollection;
/**
* @Entity(repositoryClass="App\Repository\Page")
* @Table(name="page")

*/
class Page
{
/**
* @Id @Column(type="integer", name="p_id")
* @GeneratedValue
*/
private $p_id;
/** @Column(type="string", name="p_title") */
private $p_title;
/** @Column(type="datetime", name="p_created") */
private $p_created_at;
/** @Column(type="datetime", name="p_updated_at") */
private $p_updated_at;
/** @Column(type="text", name="p_abstract") */
private $p_abstract;
/** @Column(type="text", name="p_fulltext", nullable=false) */
private $p_fulltext;
/** @Column(type="string", name="p_author", nullable=true) */
private $p_author;
/** @Column(type="string", name="p_url",nullable=true) */
private $p_url;
/** @Column(type="string", name="p_meta_title",nullable=true) */
private $p_meta_title;
/** @Column(type="string", name="p_meta_keywords",nullable=true) */
private $p_meta_keywords;
/** @Column(type="string", name="p_meta_description",nullable=true) */
private $p_meta_description;
/** @Column(type="string", name="p_status") */
private $p_status;
/** @Column(type="string", name="p_weight") */
private $p_weight;
/**
* @ManyToOne(targetEntity="User", inversedBy="pages")
* @JoinColumn(name="p_u_id", referencedColumnName="u_id")
*/
private $user;

/**
* @OneToMany(targetEntity="App\Entity\Page\Basket", mappedBy="page", cascade={"persist", "remove"})
*/
protected $pageBaskets;


public function __construct()
{
$this->pageBaskets = new ArrayCollection();
$this->pageMedia = new ArrayCollection();
}
public function __get($property)
{
return $this->property;
}
public function __set($property,$value)
{
$this->$property = $value;
}
public function getPageMedia()
{
return $this->pageMedia;
}
public function setUser(\App\Entity\User $user)
{
$this->user = $user;
}
public function getMedias()
{
return $this->pageMedia;
}
public function getPageBaskets()
{
return $this->pageBaskets;
}
/**
* Set Page Values
* @var array $values
*/
public function setPageProperties(array $values)
{
$this->p_updated_at = new \DateTime("now");
$this->p_title = $values['p_title'];
$this->p_abstract = $values['p_abstract'];
$this->p_meta_title = $values['p_meta_title'];
$this->p_meta_keywords = $values['p_meta_keywords'];
$this->p_meta_description = $values['p_meta_description'];
$this->p_url = $values['p_url'];
$this->p_fulltext = $values['p_abstract'];
$this->p_author = '';
$this->p_status = 1;

}
public function getSimpleValues()
{
return array(
'p_updated_at' => $this->p_updated_at,
'p_title' => $this->p_title,
'p_abstract' => $this->p_abstract,
'p_meta_title' => $this->p_meta_title,
'p_meta_keywords' => $this->p_meta_keywords,
'p_meta_description' => $this->p_meta_description,
'p_url' => $this->p_url,
'p_fulltext' => $this->p_fulltext,
'p_author' => $this->p_author
);
}
}

?>


<?php
namespace App\Entity\Page;
use Doctrine\Common\Collections\ArrayCollection;

/**
* @Entity
* @Table(name="page_basket")

*/
class Basket
{
/**
* @Id @Column(type="integer", name="pb_id")
* @GeneratedValue
*/
private $pb_id;
/**
* @ManyToOne(targetEntity="Entity\Page", )
* @JoinColumn(name="pb_id", referencedColumnName="p_id")
*/
private $page;


public function __construct()
{

}
public function __get($property)
{
return $this->property;
}
public function __set($property,$value)
{
$this->$property = $value;
}
public function setPage($page)
{
$this->page = $oszpage;
}
}

?>

但是在哪里做这样的事情:
 $page->getPageBaskets()->add($basket);

我越来越 :
警告:spl_object_hash() 期望参数 1 为对象,给定为 null

我做错了什么?

最佳答案

最好按照手册中的示例进行操作,直到您感觉更舒服为止。删除神奇的 _get/_set 方法。 D2 依靠拦截方法调用来完成它的工作。将数组集合视为数组并构建与实体交互的特定方法。

具体来说:

public function addPageBasket($pageBasket)
{
$this->pageBaskets[] = $pageBasket;
}
...
$page->addPageBasket($pageBasket);

附注。对于您的特定问题,很可能 $basket 不是对象。

关于zend-framework - 教义 2 - 持续错误 - 给出警告 : spl_object_hash() expects parameter 1 to be object, null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9549220/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com