[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Возврат массива из функции
Страницы: 1, 2
entroika
Нужно вернуть массив из функции. Ситуация примерно такая

class B {}

class A {
function getArray(){
$arr = array();
$obj = new B();
$arr[]=$obj;
// Здесь is_array($arr) выдаст TRUE
return $arr;
}
}


//

$objA = new A();
$myArray = $objA->getArray();
/* Здесь is_array($myArray) выдаст FALSE
* а мне нужен $myArray массив!!



В докухе нашел следующее:
Цитата


# (5) You have to force pass by reference and return by reference on arrays

function &array_ref_inc_x(&$array) {
    $array{'x'}++;
    return $array;
}

$array = array();
$array['x'] = 1;

$array2 =& array_ref_inc_x($array); # Need reference here as well as the function sig
array_ref_inc_x($array2);

print $array['x'] . ', ' . $array2['x'] . "\n";



Подход как в С/С++, но не хотелось бы передавать ссылку на массив чтоб функцией его заполнять. Если нет другого выхода, придется конечно сделать так но может все-таки у кого есть более удобное решение. Буду признателен.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.