подскажите почему не работает своя функция в 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
Ответ
$convert и $margin в файле представления - локальные. Область их видимости - функция. Передайте им значения:
function conver($prise, $margin, $convert){...
UPD(не в тему, но всё же).:
А зачем вы, собственно, определяете функцию в представлении. OC это MVC система, и этим вы нарушаете логику. Поддерживать такой код станет труднее. Я как разраб ожидаю увидеть во вьюхе исключительно переменные со значениями, но не как не функции. Логику я буду искать в моделях и контроллерах. Избегайте такого подхода, используйте функции в файлах представления только в js скриптах, IMHO.
Комментариев нет:
Отправить комментарий