🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 1、为什么使用var_dump打印对象时,只能看到成员属性呢? ![](https://img.kancloud.cn/47/2e/472e750bfab81e65d0d41bb37717c62a_793x450.png) ## 2、OOP中内存的分配情况 ![](https://img.kancloud.cn/1d/be/1dbe7de291bc64e31be94ddd88bf00e9_829x415.png) ## 3、什么是值传递? * 所谓“值传递”,就是将一个变量的“数据”或“值”,复制一份,传递给另一个变量; * 这两个变量之间没有任何关系,修改其中一个变量的值,另一个变量的值不受影响; * 默认情况下,PHP值传递的数据类型有:字符串型、整型、浮点型、布尔型、数组型、NULL。 ![](https://img.kancloud.cn/5b/fc/5bfc08721ba204519830782e405ebf89_768x379.png) 值传递在内存中如何表现? ![](https://img.kancloud.cn/11/ec/11ec946407fdc43721892caf169b468e_383x320.png) ## 4、什么是引用传递? * 所谓“引用传递”,就是将一个变量的“数据地址”,复制一份,传递给另一个变量; * 这两个变量指向“同一个地址”,修改其中一个变量的值,另一个变量的值也会受影响; * 默认情况下,PHP引用传递的数据类型有:对象和资源。 ![](https://img.kancloud.cn/2d/5d/2d5dc64dd5691cac310d876f74ef7c2e_631x500.png) ![](https://img.kancloud.cn/f5/60/f5604961c6b7f5f62d99db1ee0c907f2_1065x366.png) 对于海量数据,使用“引用传地址”,要比“传值”速度快。 ## 5、其它类型变量使用引用传递 如果其它类型变量使用引用传递,只需要在引用的变量前加“&”符号即可。 ![](https://img.kancloud.cn/0f/6f/0f6f760aa90489d12c5e3bd2d2fb5ae3_724x428.png) 提示:$obj2 = $obj1 和$obj2 = &$obj1效果是一样的。