Изменить по ссылке (без возвращаемого значения), добавив &
к каждому входящему параметру вашей пользовательской функции.
array_walk()
пожаловался на повторение этих ссылок, поэтому я остановился на classi c foreach()
l oop (который также изменяется по ссылке).
Если вы распечатываете их ... func_get_args()
менее кооперативен, чем get_defined_vars()
, потому что первый создает индексированный массив, а второй создает ассоциативный массив, который поддерживает отношения переменных.
Код: ( Демо )
function somefunc(&$a, &$b, &$c, &$d, &$e, &$f, &$g) {
foreach (get_defined_vars() as &$v) {
$v = mb_strtolower($v);
}
}
$a = 'HÈllo1';
$b = 'HÈllo2';
$c = 'HÈllo3';
$d = 'HÈllo4';
$e = 'HÈllo5';
$f = 'HÈllo6';
$g = 'HÈllo6';
somefunc($a, $b, $c, $d, $e, $f, $g);
var_export([$a, $b, $c, $d, $e, $f, $g]);
Выход:
array (
0 => 'hèllo1',
1 => 'hèllo2',
2 => 'hèllo3',
3 => 'hèllo4',
4 => 'hèllo5',
5 => 'hèllo6',
6 => 'hèllo6',
)