1.应用场景
了解学习借鉴 php[框架中]实现链式操作实现原理 |
2.学习/操作
测试环境: win10 64位 专业版 2.1 //适用于php 自带的内置函数调用 比如:
1. 方式一 使用魔法函数__call结合call_user_func来实现
输出:
输出: 备注: array_unshift() 函数用于向数组插入新元素。新数组的值将被插入到数组的开头。 call_user_func()和call_user_func_array都是动态调用函数的方法,区别在于参数的传递方式不同。 3.方式三 不使用魔法函数__call来实现 只需要修改_call()为trim()函数即可:
输出:
输出: 2.2 自定义函数/方法的链式调用[框架中使用] 总结: 链式调用本质, 是每次执行调用者都是对象. 只要查看详情即可知道有哪些方法, 从而执行相应操作. 后续补充 ... |
3.问题/补充
TBD |
4.参考
https://www.jb51.net/article/103836.htmhttps://www.jb51.net/article/103836.htm //PHP三种方式实现链式操作详解 https://www.php.cn/php-weizijiaocheng-395865.html //PHP 中__call()的使用方法 https://www.php.cn/php-weizijiaocheng-390011.html //PHP中__call()和__callStatic()使用方法 https://www.php.net/manual/zh/function.call-user-func.php //call_user_func https://www.php.net/manual/zh/function.call-user-func-array.php //call_user_func_array https://www.php.net/manual/zh/language.oop5.magic.php //魔术方法 https://www.php.net/manual/zh/language.oop5.overloading.php#object.call // __call 与 __callStatic方法重载 https://www.php.net/manual/zh/language.oop5.magic.php#object.tostring //__toString https://www.cnblogs.com/-simon/p/5875128.html //PHP实现链式操作的原理 https://www.cnblogs.com/yangtoude/p/php-simple-chain-operation-implementation.html //用php实现一个简单的链式操作 <<PHP核心技术与最佳实践>> -- Page 9 //之前读, 没看明白, 现在倒是看懂了些. 有些书还是要多读, 多实践 |
后续补充
...