Всем привет! Возникла необходимость привязать к категориям дополнительное значение, но создавать новое поле в бд в моем случае нельзя, поэтому решил использовать поле column а заносить данные через "+" таким вот образом например "0+3" или же без дополнительных значений (это не всегда требуется) как по дефолту например "0" Для того чтобы в контроллере header.php (а я "вытаскиваю" их там) решил использовать php функцию explode код оформил таким образом PHP: $new_data = explode('+', $category['column']); $column = $new_data[0]; $new_data = false; if ($new_data[1]) { $style = $new_data[1]; } дальше в массив $data['categories'][] = array( добавил 'column' => $column, 'style' => $style, на выходе получаю ошибку Notice: Undefined offset: 1 in C:\OpenServer\OpenServer\domains\localhost\ то есть колонки успешно отделяются а со style проблема так как в некоторых полях он не вносится. Никто не подскажет как правильно написать это в php чтоб при всех значениях $category['column'] происходило правильное выделение данных. Спасибо.
PHP: $new_data = explode('+', $category['column']);$column = $new_data[0];isset($new_data[1]) ? $style = $new_data[1] : $style = "";
Что-то я не пойму. Вы сначала определяете $new_data как массив, потом как булеву переменную, потом опять обращаетесь как массиву. Для чего нужно $new_data = false;? Вот ISomeInterface понятно описал. И еще один непонятный момент. Насколько мне известно поле column имеет тип int(3). Вы уверены, что оно сохраняет значения типа "0+style"? Насколько я понимаю, Вам все-таки придется добавить еще одно поле, либо еще одну таблицу типа oc_category_to_style. Либо, если уж совсем принципиально нельзя трогать БД, придумать как сохранить дополнительные настройки в $config, например в формате json.