Не работает своя функция в opencart 2.0

533
28 мая 2017, 23:04

подскажите почему не работает своя функция в opecart 2.0 делаю так в контролере:

$data['margin'] = $this->model_query_query->getMargin(); // тут 10
$data['convert'] = number_format($this->currency->convert('1', 'CNY', $this->currency->getCode()) + 0.07,2); //тут получаем 1,36

в представлении так:

function conver($prise){
    $convertor = $prise * $convert;
    $prosent = $convertor / 100 * $margin + $convertor;
    return $prosent;
}
echo conver('100'); //ответь должен быть 110

получаю ошибку: Undefined variable: convert in

Answer 1

$convert и $margin в файле представления - локальные. Область их видимости - функция. Передайте им значения:

function conver($prise, $margin, $convert){...

UPD(не в тему, но всё же).:

А зачем вы, собственно, определяете функцию в представлении. OC это MVC система, и этим вы нарушаете логику. Поддерживать такой код станет труднее. Я как разраб ожидаю увидеть во вьюхе исключительно переменные со значениями, но не как не функции. Логику я буду искать в моделях и контроллерах. Избегайте такого подхода, используйте функции в файлах представления только в js скриптах, IMHO.

READ ALSO
Php работа с базами данных [требует правки]

Php работа с базами данных [требует правки]

Помогите, пожалуйста, написать скрипт, формирующий и обрабатывающий блок опроса мнения посетителей сайтаДля формирования блока использовать...

364
Проблемы с выводом переменной $_COOKIE['id'] [требует правки]

Проблемы с выводом переменной $_COOKIE['id'] [требует правки]

в переменную $_COOKIE['id'] записан id пользователя например 8, при выводе он выводит 08, при попытке обрезать строку через substr($_COOKIE['id'], 1, 1) или substr($_COOKIE['id'],...

257
“Портативное” PHP или Python/Django web приложение

“Портативное” PHP или Python/Django web приложение

Существует ли возможность сделать PHP или Python/Django приложение переносным те

348
получение и вывод объекта JSON

получение и вывод объекта JSON

Здравствуйте! Есть страница, которая выводит сообщения из бд в таблицу, которые подгружаются с помощью ajax(json):

360