「product_id」を受け入れる関数を作成した後、すべてのJsonフィールドを循環してid 'product id'それをエンコードしてデータベースを更新する必要があります。MySQLでJSONフィールドを削除する[PHP] [CodeIgniter]
現在、 'product_id'を '154'で置き換えました。これは 'id'なので削除するテストです。
は私が書いたこのforeach文は、すべてのID
$user = $this->session->userdata('user_id');
$autoOrder = $this->db->get_where('auto_order', ['user_id' => $user])->row()->products;
$temp = json_decode($autoOrder);
foreach ($temp as $value) {
$last_value = (array)$value;
foreach ($last_value as $key=> $value) {
foreach($value as $key2=>$value2) {
if ($key2 == 'id' && $value2 != '154') {
echo "Product Id: " . $value2 . "<br>";
$new_ids[] = $value2;
}
}
}
}
どのようにすることができます私は今サイクルのすべてのautoOrderを通って、「new_ids」が唯一のものを取得し、私を取得しますか?
JSONがどのように見えるかの例:
[
{
"order": {
"id": "154",
"qty": "1",
"option": "{\"color\":{\"title\":\"Color\",\"value\":null}}",
"price": "2433.62",
"name": "Race Car",
"shipping": "0",
"tax": "26",
"image": "http://localhost/products/image/34",
"coupon": ""
}
}
]
db内のテーブル – Gilbert
提供された製品IDを使用してJSONフィールドを削除します – Gilbert
////////////はい – Gilbert