Хорошо, я пытаюсь поместить параметры в функцию, которая вызывается так:
$parameters['function']($parameters['params']);
Вот функция и параметры, которые мне нужно поместить в это:
$parameters['function'] = 'test_error';
$parameters['params'] = array(0 => $txt['sometext'], 1 => 'critical', 2 => true);
Функция test_error принимает 3 параметра:
- Ошибка вывода
- Тип ошибки, отмеченной в строковом значении («общая», «критическая» и т. Д.).
- Должно ли это быть отражено или нет.
Вот вывод, который я получаю:
Вот тестовая ошибка. ArraycriticalArray1
Я знаю, что эта функция прекрасно работает, но она дает мне только 1-й параметр, возвращаемый из нее. Что я делаю не так с $parameters['params']
??
РЕДАКТИРОВАТЬ: Вот функция:
function test_error($type = 'error', $error_type = 'general', $echo = true)
{
global $txt;
// Build an array of all possible types.
$valid_types = array(
'not_installed' => $type == 'not_installed' ? 1 : 0,
'not_allowed' => $type == 'not_allowed' ? 1 : 0,
'no_language' => $type == 'no_language' ? 1 : 0,
'query_error' => $type == 'query_error' ? 1 : 0,
'empty' => $type == 'empty' ? 1 : 0,
'error' => $type == 'error' ? 1 : 0,
);
$error_html = $error_type == 'critical' ? array('<p class="error">', '</p>') : array('', '');
$error_string = !empty($valid_types[$type]) ? $txt['dp_module_' . $type] : $type;
// Should it be echoed?
if ($echo)
echo implode($error_string, $error_html);
// Don't need this anymore!
unset($valid_types);
}