Php OpenCart添加到阵列
这可能是一个非常简单的问题,但我找不到答案。我想向OpenCart中的数组添加一个键/值对,但似乎无法使其正常工作。我不确定我添加的是否已经是一个数组 在第66行的catalog/controller/account/history.php中,有一个数组的定义:-Php OpenCart添加到阵列,php,arrays,opencart,Php,Arrays,Opencart,这可能是一个非常简单的问题,但我找不到答案。我想向OpenCart中的数组添加一个键/值对,但似乎无法使其正常工作。我不确定我添加的是否已经是一个数组 在第66行的catalog/controller/account/history.php中,有一个数组的定义:- $this->data['orders'][] = array( 'order_id' => $result['order_id'],
$this->data['orders'][] = array(
'order_id' => $result['order_id'],
'name' => $result['firstname'] . ' ' . $result['lastname'],
'status' => $result['status'],
'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])),
'products' => $product_total,
'total' => $this->currency->format($result['total'], $result['currency'], $result['value']),
'href' => HTTPS_SERVER . 'index.php?route=account/invoice&order_id=' . $result['order_id']
);
我想使用VQMod添加到此数组。VQMod不允许我替换定义中的一行。我不知道为什么,我已经试了几个小时了,就是不行。所以我决定在下面加一条线如下:-
$this->data['orders']['amountToPay']=$paymentState['amountToPay']
这不管用。即使我直接在页面中键入也不行。我想我把语法搞乱了,但除非我不理解数组结构,否则我不知道该怎么做
感谢您的帮助。您可以使用以下行-
$this->data['orders'][sizeof($this->data['orders'])-1]['amountToPay'] = $paymentState['amountToPay'];
因为您的$this->data['orders']也是一个包含关联数组集合的数字索引数组
我认为您的问题会得到解决。使用vQmod很容易做到这一点。基本上你需要搜索
$this->data['orders'][] = array(
然后把绳子放在后面。以下是您需要在自定义vQmod XML文件中输入的内容
<file name="catalog/controller/account/history.php">
<operation>
<search position="after"><![CDATA[$this->data['orders'][] = array(]]></search>
<add><![CDATA['amountToPay' => $paymentState['amountToPay']]]></add>
</operation>
</file>
数据['orders'][]=数组(]]>
$paymentState['amountToPay']]>