Нужно вернуть массив из функции. Ситуация примерно такая
class B {}
class A {
function getArray(){
$arr = array();
$obj = new B();
for($i=0;$i<5;$i++){
...
$arr[] = $obj;
}
return $arr;
}
}
$objA = new A();
$myArray = $objA->getArray();
В докухе нашел следующее:
Подход как в С/С++, но не хотелось бы передавать ссылку на массив чтоб функцией его заполнять. Если нет другого выхода, придется конечно сделать так но может все-таки у кого есть более удобное решение. Буду признателен.
Спустя 2 часа, 9 минут, 45 секунд (15.04.2011 - 14:09) Michael написал(а):
Цитата |
/* Здесь is_array($myArray) выдаст FALSE |
у меня на твоем примере выдает true. Какая у тебя версия php ?
Спустя 9 минут, 54 секунды (15.04.2011 - 14:19) entroika написал(а):
на данный момент не у компа на котором разрабатываю, точно сказать не могу, но точно 5+. У Вас на какой версии выдала true?
Спустя 3 минуты, 27 секунд (15.04.2011 - 14:23) Michael написал(а):
Цитата (entroika @ 15.04.2011 - 13:19) |
на данный момент не у компа на котором разрабатываю, точно сказать не могу, но точно 5+. У Вас на какой версии выдала true? |
5.2.8
Код:
class B {}
class A {
function getArray(){
$arr = array();
$obj = new B();
for($i=0;$i<5;$i++){
$arr[] = $obj;
}
if(is_array($arr)) echo "array...\n";
return $arr;
}
}
print("<pre>");
$objA = new A();
$myArray = $objA->getArray();
print_r($myArray);
if(is_array($myArray)) echo '...array';
print("</pre>");
Результат:
array...
Array
(
[0] => B Object
(
)
[1] => B Object
(
)
[2] => B Object
(
)
[3] => B Object
(
)
[4] => B Object
(
)
)
...array
Спустя 4 минуты, 14 секунд (15.04.2011 - 14:27) entroika написал(а):
Спасибо, доберусь до ПК, проверю.