Answers:
区别在于:
您可以使用内部order_id轻松加载订单:
Mage::getModel('sales/order')->load($orderId);
PS:如果需要,您可以轻松地从已加载的订单中获取增量ID:
$order->getIncrementId();
id
= sales_flat_order
表的主键值。您在商店中获得的每个订单都会自动递增。它通常从1开始并上升。
increment id
=下订单前生成的“用户友好”编号。它必须是唯一的,并且可以通过在线支付方式作为参考(但不仅限于此)。
默认情况下,增量ID如下所示。
100000104
|| || |
store view id ---|| || |
|---||-|
| |----- an increment number kept in the table eav_entity_store
a lot of zeros --|
零的数目是可变的。使用进行添加,以str_pad
使没有存储ID的增量ID的长度为8
。
eav_entity_store
。但是对于第一顺序,该表中没有记录。这样就创建了一个。创建后,商店ID将存储为increment_prefix
。看看它是如何工作的Mage_Eav_Model_Entity_Type::fetchNewIncrementId
。从第:行开始 if (!$entityStoreConfig->getId()) {
。
一个销售订单包含两个值,entity_id(订单ID)和增量ID(订单增量ID)。实体ID是订单表上的主键。这意味着您可以使用它来加载实际的订单实体。见下文
Mage::getModel("sales/order")->load($enityId);
并获得
$order->getId();
要么 $order->getEntityId();
通常,increment_id是一个更友好的数字,通常是特定于网站/商店的,即20001201前面的2常常表示这是来自您第二个商店/网站的订单(不能记住哪个)。这通常称为真实订单ID。您可以使用此增量ID加载订单实体
Mage::getModel("sales/order")->loadByIncrementId($incrementId);
并获得
$order->getRealOrderId(); or $order->getIncrementId();