亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用嚴格屬性類型 PDO::FETCH_CLASS 時處理空值

使用嚴格屬性類型 PDO::FETCH_CLASS 時處理空值

PHP
慕碼人2483693 2023-07-01 17:34:02
我正在嘗試獲取所有行并將其設置為Inventory類。這是我的課程以及我如何獲取它class Inventory {  public int $id;  public string $name;  public string $type_of;  public float $weight;}$query = "SELECT * FROM inventories";$inventories = $this->db->prepare($query);$inventories->execute();$inventories = $inventories->fetchAll(PDO::FETCH_CLASS, 'Inventory');在數據庫中,該type_of屬性可以為空。因此,當我執行代碼時,它會拋出錯誤:類型化屬性 Inventory::$type_of 必須是字符串,使用 null有沒有辦法忽略 null 值并將其轉換為其類型默認值。示例:type_of是字符串,當值為null時會變成空字符串。weight是 float,那么它會變成0.0.太感謝了
查看完整描述

2 回答

?
絕地無雙

TA貢獻1946條經驗 獲得超4個贊

有兩種可能的解決方案,您可以將strict_types設置為offin?PHP,并且您將不再擁有TypeError您所獲得的解決方案,或者您可以保持strict_types設置不變并只需進行以下更改:

public?string?$type_of;

public??string?$type_of;


查看完整回答
反對 回復 2023-07-01
?
波斯汪

TA貢獻1811條經驗 獲得超4個贊

您可以將類屬性聲明為可為空和/或具有默認值。


例如:


class Inventory?

{

? ? public int $id;

? ? public string $name;

? ? public ?string $type_of = null;

? ? public float $weight = 0;

}

查看完整回答
反對 回復 2023-07-01
  • 2 回答
  • 0 關注
  • 138 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號