при использовании массивов в качестве параметров в функциях, должен ли я передавать их по ссылке или по значению? Или это не так важно?передать массив по ссылке
ответ
Обычно вы должны пройти по значению.
Вы должны передавать только ссылку, если вам нужно изменить массив на месте, а не возвращать новый.
Там нет выигрыша в производительности для передачи по ссылке при чтении из массива, так как PHP использует копирования при записи,
Если вы заинтересованы в максимизации производительности, сделать тест скорости. Из-за оптимизаций PHP передача по ссылке обычно быстрее, чем передача по значению, только если вы модифицируете массив (однако обратите внимание, что поведение тоже отличается!).
Передача по значению помогает уменьшить побочные эффекты функции (побочные эффекты - общий источник сложности и ошибок кода), а для этого и других реасинов это «лучший стиль».
Итак, перейдите по ссылке, только если есть веские основания для этого.
- 1. передать массив по ссылке
- 2. передать массив по ссылке в golang
- 3. Как передать массив списка stdlib по ссылке
- 4. Как передать массив структур функции по ссылке?
- 5. Как передать массив «по ссылке» в C?
- 6. Как передать массив по ссылке на функцию?
- 7. Как передать динамический массив по ссылке C++
- 8. Как передать массив по ссылке на класс?
- 9. Как передать массив для работы по ссылке?
- 10. Как передать 2D-массив по ссылке?
- 11. передать массив структур в функцию по ссылке
- 12. Как передать массив функции по ссылке?
- 13. передать HashMap по ссылке
- 14. Передать по ссылке
- 15. F # передать по ссылке
- 16. QuickSort, передать по ссылке, рекурсия
- 17. Массив указателя функции по ссылке
- 18. Delphi массив Передавать по ссылке
- 19. Изменить массив по ссылке
- 20. Измените массив хэшей по ссылке
- 21. Передать указатель/передать по ссылке в C
- 22. Передать по ссылке TCL - резьба?
- 23. Как передать структуру по ссылке?
- 24. Как передать свойство по ссылке
- 25. Как передать функцию по ссылке?
- 26. Передать по ссылке в классе
- 27. Как передать подстроку по ссылке?
- 28. Невозможно передать объект по ссылке
- 29. передать идентификатор по ссылке нажмите
- 30. Попытка передать матрицу по ссылке
Действительно, переход по значению, когда вам не нужно, может вызвать неожиданные изменения в исходном массиве, если вы играете с ним внутри функции. – seanmonstar
Я думаю, что он подразумевает передачу по ссылке, когда вам это не нужно. –