|
|
|
функции возвращающие массивы
|
|||
|---|---|---|---|
|
#18+
Привет всем гуру! Я где-то слышала, что если функция должна возвращать большие массивы или объекты классов, то вместо оператора return лучше задехствовать механизм передачи параметров по ссылке, даже если в этом нет прямой необходимости. Хочется узнать насколько это суждение верно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2004, 10:38 |
|
||
|
функции возвращающие массивы
|
|||
|---|---|---|---|
|
#18+
Слухами полнится земля наша. Вы бы у тех, от кого услышали это мнение, для начала поинтересовались бы, почему - если это люди понимающие - их ответ бы вам всё объяснил. Хотя, имхо, всё и так слишком очевидно (ключевое слово - большой). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2004, 10:59 |
|
||
|
функции возвращающие массивы
|
|||
|---|---|---|---|
|
#18+
:) ну я так и не разобрала... значит лучше по ссылке????? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2004, 11:22 |
|
||
|
функции возвращающие массивы
|
|||
|---|---|---|---|
|
#18+
Эк у вас всё просто - лучше/хуже. Всё зависит от ситуации. Ключевое слово - больше. Если функция занимается тем, что просто обходит массив, не изменяя его - однозначно, передача по ссылке позволит сэкономить память - поскольку аргумент не будет дублироваться в памяти (передача параметра обычным образом вынуждает интерпретатор создавать копию аргумента - в итоге памяти расходуется больше ). То же самое касается foreach($arr as $k=>$v), который в целях экономии ресурсов может иметь смысл расписывать через for(reset($arr);list($k;$v)=each($arr);) - но опять же - всё зависит от решаемых задач. Когда речь идёт о небольших массивах (а чаще всего это именно так), в подобной экономии на спичках особого смысла нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2004, 11:52 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=32775112&tid=1479192]: |
0ms |
get settings: |
6ms |
get forum list: |
7ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
21ms |
get topic data: |
5ms |
get forum data: |
1ms |
get page messages: |
20ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 275ms |

| 0 / 0 |
