есть 2 массива чисел обьявленных в главной программе, одна функция должна их обрабатывать и отдавать обратно в программу для дальнейших вычеслений, но все вычисления отсаются в нутри функции из-за локальной переменной, скажите как тут поступить, очень не хочется использовать global :cry:
PHP: <? function a($a) { $a='пчелка говорит: '.implode (' и ', $a); return $a; } $zpp=array('bububu', 'jujuju'); echo a($zpp);
ой, я туплю. Возвращать только 1 массив можно. Сорри. Тогда глобал. приведи пример того, что хочешь сделать, может тебе посоветуют что-то
function func($array_a, $array_b) { return array($array_a, $array_b); } lists($arr_a, $arr_b) = func($arr_a, $arr_b); Или же по ссылке function func(&$array_a, &$array_b) { }
А я написал второй строчкой все дополнительные действия. Но вообще в данном случае по ссылке передавать наиболее оптимально - зачем копировать данные туда-сюда.
Забавная задача - передача неопределенного количества аргументов по ссылке =) PHP: <? function caller() {}; caller(&$foo, &$bar); ?> После чего мы получим по шее от РНР за это.
а как эти ссылки на переменные с точки зрения безопасноти себя ведут, можно ли какой нить вред через них сделать?