我正在为opencart创建一个自定义送货方式,但是我被卡在目录模型文件上,这是PHP 5.4+
,但是我如何使用PHP 5.3
作为Opencart需求开始来自PHP 5.3
目录/模型/海运/ items.php
$languages = $this->language->get('code');
$quote_data = array();
$quote_data['items'] = array(
'code' => 'items.items',
'title' => $this->config->get('items_shipping_description')[$languages],
'cost' => $this->config->get('items_cost'),
'tax_class_id' => $this->config->get('items_tax_class_id'),
'text' => $this->currency->format($this->tax->calculate($items_cost, $this->config->get('items_tax_class_id'), $this->config->get('config_tax')))
);
此行适用于PHP 5.4+但不适用于PHP 5.3
'title'=> $this->config->get('items_shipping_description')[$languages],
我得到PHP 5.3的错误
Parse error: syntax error, unexpected '[', expecting ')' in ...
我还阅读了许多重复的问题,尝试了许多不同的方法让这个工作没有运气!请帮忙,谢谢!
答案 0 :(得分:3)
只需将其分配给变量:
$description = $this->config->get('items_shipping_description')
然后使用:
$quote_data['items'] = array(
'code' => 'items.items',
'title' => $description[$languages]
'cost' => $this->config->get('items_cost'),
'tax_class_id' => $this->config->get('items_tax_class_id'),
'text' => $this->currency->format($this->tax->calculate($items_cost, $this->config->get('items_tax_class_id'), $this->config->get('config_tax')))
);
答案 1 :(得分:1)
$this->config->get('items_shipping_description')[$languages]
这是函数数组解除引用,仅在php 5.4
中添加要使它与php 5.3一起使用,您需要将该返回值分配给变量,然后使用它。
$items = $this->config->get('items_shipping_description');
$items[$languages];
答案 2 :(得分:0)
试试这个,
$desc = $this->config->get('items_shipping_description');
和
'title' => $desc[$languages],