我有一个数组的集合,由qty作为字符串,我想要的是删除一个$
符号,使字符串为整数
"collection": [
{
"id": 983,
"controlNumber": "4498818",
"ItemNumber": "PS2W12077",
"shipment": {
"id": 27,
"Item": "PS2W12077",
"ColorCode": "GRPFR",
"qty": "$1,638"
}
},
{
"id": 982,
"controlNumber": "4498818",
"ItemNumber": "PS2W12077",
"shipment": {
"id": 27,
"Item": "PS2W12077",
"ColorCode": "GRPFR",
"qty": "$1,638"
}
},
{
"id": 981,
"controlNumber": "4498818",
"ItemNumber": "PS2W12077",
"shipment": {
"id": 27,
"Item": "PS2W12077",
"ColorCode": "GRPFR",
"qty": "$1,638"
}
},
{
"id": 980,
"controlNumber": "4498818",
"ItemNumber": "PS2W12077",
"shipment": {
"id": 27,
"Item": "PS2W12077",
"ColorCode": "GRPFR",
"qty": "$1,638"
}
}
]
我在模型上得到did关系的方式如下
public function Openorder()
{
$object = $this->hasOneThrough(OpenorderImportTemp::class, 'ItemNumber', 'Item');
return $object;
}
然后控制器上的抓取在
下面$openorder_data = OpenorderImportTemp::
select('id', 'controlNumber', 'ItemNumber', )
->with('shipment:id,Item,ColorCode,qty')
// ->groupBy('controlNumber')
->orderby('id', 'desc')
->where('ControlNumber', '!=', '0')
->get();
可以根据需要将字符串更改为整数。我所尝试的如下
$openorder_data = OpenorderImportTemp::
select('id', 'controlNumber', 'ItemNumber', DB::raw("SUM(shipment.qty) as qtysum") )
->with('shipment:id,Item,ColorCode,qty')
// ->groupBy('controlNumber')
->orderby('id', 'desc')
->where('ControlNumber', '!=', '0')
->get();
protected $casts = [
'qty' => 'integer',
];
on model解决我的问题。它将字符串更改为整数