PHP进阶篇(奇怪的知识又增加了)

这里的知识不太正经哦 但用好了很实用 哈哈

对象和数组的调用

对象:$object->属性名

$object->方法名()

数组:$array['下标名']

这里都理解 但开发需要注意有些地方会产生调用错误 尤其框架model方法处 有的是数组有的是对象 直接返回前端看起来都是一样的 但是语法会产生错误是因为返回值类型自认为是数组或对象 产生语法错误问题

可变变量

php 复制代码
$name = "a";

function a(){
    ...
}

function b(){
    ...
}

$$name();

//结果执行a方法  有想法的小伙伴已经知道该用来干什么了

由此扩展:

php 复制代码
class Shop{
    public function getName(){
        ...
    }
    public function getPrice(){
        ...
    }
}


$className = "Shop";
$methodName = "getPrice";

$class = new $className();
$class->$methodName();

这两种写法是PHP支持的!而且可以组合起来一起实用 甚至传值一变再变 扩展性很强大吧

trait

作用:php一种代码复用机制 类似于类继承或者说代码块 但一个类可以使用该关键字复用多个类的方法 还有冲突解决 覆盖优先级问题(先继承父类方法,如果trait有同名方法覆盖,如果本身有方法再覆盖) 声明和使用:参考php官网手册 PHP: Traits - Manual

相关推荐
知识分享小能手9 分钟前
R语言入门学习教程,从入门到精通,R语言获取数据 (8)
开发语言·学习·r语言
qq_452396239 分钟前
第十一篇:《性能压测基础:JMeter线程模型与压测策略设计》
java·开发语言·jmeter
ComputerInBook10 分钟前
C++ 关键字 constexpr 和 consteval 之注意事项
开发语言·c++·constexpr·consteval
澈20717 分钟前
二叉搜索树:高效增删查的秘诀
java·开发语言·算法
米啦啦.25 分钟前
STL(标准模板库)
开发语言·c++·stl
lly20240639 分钟前
建造者模式:构建复杂对象的最佳实践
开发语言
无尽冬.1 小时前
个人八股之string字符串
java·开发语言·经验分享·后端·异世界
吃好睡好便好1 小时前
在Matlab中绘制抛物三维曲面图
开发语言·人工智能·学习·算法·matlab·信息可视化
半步仙人1 小时前
MATLAB的几种取整操作总结
开发语言·matlab
伯远医学1 小时前
Nat. Methods | 邻近标记技术:活细胞中捕捉分子互作的新利器
java·开发语言·前端·javascript·人工智能·算法·eclipse