Я запрашиваю в своей базе данных этот код:
public function searchProduct(array $search = [])
{
return $this->select('product_id', 'name')
->where('name', 'LIKE', '%' .$search['product_name'] . '%')
->get();
}
Я проверяю данные моего ответа, затем вижу коллекцию с правильными данными:
Illuminate\Database\Eloquent\Collection {#290
#items: array:11 [
0 => App\Models\ShopfrontProductMaster {#291
#table: "shopfront_product_master"
#primaryKey: "product_id"
#connection: "mysql"
#keyType: "int"
+incrementing: true
#with: []
#withCount: []
#perPage: 15
+exists: true
+wasRecentlyCreated: false
#attributes: array:2 [
"product_id" => "11E86F49-5930-62DA-BF8B-0A1468096C0D"
"name" => "Iron Jack Crisp Australian Lager Bt 330ml 24pk"
]
#original: array:2 [
"product_id" => "11E86F49-5930-62DA-BF8B-0A1468096C0D"
"name" => "Iron Jack Crisp Australian Lager Bt 330ml 24pk"
]
#changes: []
#casts: []
#classCastCache: []
#dates: []
#dateFormat: null
#appends: []
#dispatchesEvents: []
#observables: []
#relations: []
#touches: []
+timestamps: true
#hidden: []
#visible: []
#fillable: []
#guarded: array:1 [
0 => "*"
]
}
...
Но когда я использую toArray ( ), он автоматически конвертирует мой product_id в int:
array:11 [
0 => array:2 [
"product_id" => 9223372036854775807
"name" => "Iron Jack Crisp Australian Lager Bt 330ml 24pk"
]
Я действительно не знаю, почему это произошло. Можете ли вы дать мне решение, чтобы это исправить?
Большое спасибо!