Учитывая функцию, созданную с помощью create_function
, таким образом:
$func = create_function('$who', 'echo "Hello, $who!";');
Вы можете назвать это так:
$func('World');
И вы получите:
Hello, World!
Теперь, имея значение по умолчанию для параметра, код может выглядеть так:
$func = create_function('$who="World"', 'echo "Hello, $who!";');
Примечание: я только добавил значение по умолчанию для параметра в первом аргументе, переданном функции create_function.
И затем, вызывая новую функцию:
$func();
Я все еще получаю:
Hello, World!
т.е. используется значение по умолчанию для параметра.
Таким образом, значения по умолчанию для параметров работают с create_function
так же, как и для других функций: вам просто нужно поместить значение по умолчанию в список параметров.
После этого о том, как создать строку, содержащую параметры и их значения ... Полагаю, что существует пара конкатенаций строк, не забыв при этом избежать того, что должно быть экранировано.