我打印了一个数组:
echo "<pre>";
print_r($obj);
die();
它看起来像:
Array
(
[0] => Store\Model\OrderShippingMethod Object
(
[id] => 0
[name] => ExpeditedParcel
[amount] => 13.04
[days] => 1
[class] => CanadaPost
)
[1] => Store\Model\OrderShippingMethod Object
(
[id] => 1
[name] => Priority
[amount] => 25.71
[days] => 1
[class] => CanadaPost
)
[4] => Store\Model\OrderShippingMethod Object
(
[id] => 4
[name] => PurolatorExpress9AM
[amount] => 56.57
[days] => 1
[class] => Purolator
)
)
我希望将我的数组推入数据库,但我不太确定该怎么做。我的第一次尝试生成了一个非常奇怪的数据库,其中包含大量空值。。实际上,所有的值都是空的。
我对ExpressionEngine使用了一个预先准备好的语句,如下所示:
ee()->db->insert(
'exp_easypost_carriers',
array(
'carrier_id' => $obj['id'],
'carrier_name' => $obj['name'],
'site_id' => 3,
'adjustment_id' => 1,
'rate' => $obj['amount'],
'days' => $obj['days'],
)
);
但实际上,我可以在PHP中使用一个普通的insert into语句:
$sql = "INSERT INTO exp_easypost_carriers (carrier_id, carrier_name, site_id, adjustment_id, rate, days)
VALUES ($obj['id'], $obj['name'], 3, 1, $obj['amount'], $obj['days']";
尽管如此,我还是更喜欢使用ExpressionEngine的语句,因为我在那个环境中工作,它与vanilla PHP语句非常接近。但它不起作用。