gpt4 book ai didi

php - 在 symfony 中插入带有 Doctrine 的\double 值

转载 作者:行者123 更新时间:2023-12-04 05:20:23 26 4
gpt4 key购买 nike

我有一个叫做柏拉图的类,它扩展了 Producto 女巫包含的属性。 setter 在这里定义:

public function setPrecio(\double $precio)
{
$this->precio = $precio;

return $this;
}

我尝试向数据库添加一个新元素:
$plato = new Plato; 
$em = $this->getEntityManager();
// I have tryed this three ways to insert
$plato->SetPrecio(doubleval($precio));
$plato->SetPrecio((double) 2);
$plato->SetPrecio(2.0);

$em->flush();

它给了我以下错误消息:

Catchable Fatal Error: Argument 1 passed to Servinow\EntitiesBundle\Entity\Producto::setPrecio() must be an instance of double, double given, called in /Users/luis/git/servinowServer-luis/src/Servinow/EntitiesBundle/Entity/PlatoRepository.php on line 41 and defined in /Users/luis/git/servinowServer-luis/src/Servinow/EntitiesBundle/Entity/Producto.php line 169

最佳答案

修改 setPrecio()以这种方式发挥作用

public function setPrecio($precio)
{
$this->precio = $precio;

return $this;
}

你可以使用类似的东西
gettype($precio)[...];
if(is_numeric($precio))[...];

对于类型控制,在将其设置为 $this 之前

请记住

Type Hints can only be of the object and array (since PHP 5.1) type. Traditional type hinting with int and string isn't supported.

关于php - 在 symfony 中插入带有 Doctrine 的\double 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13745089/

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