PHP类与对象是什么_PHP面向对象编程入门

哎哟,你写的绝对完美,但我们必须诚实。
我刚学PHP的时候也做了同样的事情,脑袋变大了。

我们只讨论类和对象。
它们实际上并不是想象的。
当我在 2 004 年或 2 005 年创建动态网站时,我总是使用 Joomla。
看看 Joomla 中的大量类,例如 Article、User 和 Category。
每个都是一个模板,它指定了它应该具有哪些属性(例如,文章必须有标题、作者和发布时间)以及应该具有什么方法(例如,文章可以显示、编辑和删除)。
如果你不使用Joomla,你就必须创建自己的轮子,这是非常费力的。

属性和方法的访问控制也很重要。
2 008 年,我为一家外贸公司写了一个系统。
当时数据非常敏感,所以我将用户的密码和银行账号设置为私密。
它们只能通过公共方式访问,而且我必须添加加密和解密过程。
如果公开的话,黑客就可以随意删除。
这不是世界末日吗?所以你看,如果protected和private使用得当,代码会更加安全。

创造者与毁灭者,我也曾踏过这个危险。
2 01 4 年,我创建了一个图像上传函数,但我并不关心使用析构函数来关闭文件流。
结果,服务器硬盘几乎满了。
为什么?因为对象没有被破坏,所以文件保持打开状态是。
排查了半天的问题,真是头疼。
所以现在写代码的时候,当资源用完的时候,应该在析构函数中清理掉。

你说的都是对的。
基础打好了,后面学习继承和多态就容易多了。
后来我知道了遗产的事,感觉自己在作弊。
类写好后,子类可以直接使用,并且可以扩展功能,效率更高。
比如在Joomla的Category中,如果想添加一个功能,比如统计这个Category的文章数量,可以直接继承Category类,重写一个方法。
不需要创建新的类,省事。

所以,不要只看理论,你必须采取行动。
只要跟着它,多写,多尝试,你就会慢慢开始。
不要害怕犯错误。
如果你犯了很多错误,你就会获得经验。
我这1 0年遇到的困难都够写一本小册子了,哈哈。

高级php是什么意思?

老实说,高级 PHP 只是有趣的 PHP。
这不像是随意写的。
有些事情你必须要明白,不要盲目去做。

例如,像 Facebook 这样的大型网站已经使用 PHP。
他们当然不会乱写。
他们需要知道如何使网站快速安全地运行。
2 008 年左右,大家都得使用高级PHP。

高级PHP主要是指深入使用它。
例如,更复杂的网站,例如拥有许多用户和事物的电子商务网站,必须使用高级 PHP。
否则访问会很慢,用户肯定会不高兴。

高级PHP,主要特点是速度快、易于修改、安全。
例如,像淘宝这样的网站拥有大量用户,需要高级 PHP 来处理。
2 01 0年左右,淘宝使用了非常先进的PHP。

要学习高级 PHP,您需要了解一些知识。
比如如何使用对象、如何设计程序、如何使用数据库、如何保证程序的安全、如何使用缓存、如何处理网络等。
这是您需要了解的一切。

例如,2 01 5 年左右,许多公司开始强调这些。
你不能只找一个程序员,你必须了解这些东西。

所以,要学习高级PHP,就必须不断学习新的东西。
技术总是在变化。
2 01 9 年,我觉得我必须学习一些新东西,否则我就跟不上。

总之,高级PHP要求很高,需要大量的知识。
这不仅仅是随机排序。

php魔术方法简介

PHP魔术方法可以自动处理特定事件。

__construct 在对象创建时被调用,用于初始化属性。
父类需要parent::__construct。

__destruct 在对象被销毁之前调用以释放资源。
就像关闭数据库连接一样。

__get读取不可访问的属性,参数为属性名。
如$user->age。

__set写入不可访问的属性,参数为属性的名称和值。
如$user->age = 3 0。

__isset 检查不可访问属性是否存在。
如isset($user->age)。

__unset 删除不可访问的属性。
未定义($user->age)。

__clone 在克隆对象并修改副本时被调用。
比如加个后缀。

__toString 在对象转换为字符串时被调用。
如echo $user。
调用函数时会触发 __invoke 对象。
例如,$user();
__call 在调用不可访问的方法时被触发。
参数是方法名称和参数列表。

__callStatic 在静态调用不可访问的方法时触发。

__sleep 在序列化之前调用并返回应该序列化的属性。
如return array('姓名','年龄')。

反序列化期间调用__wakeup来重置资源。
就像重建数据库连接一样。

__autoload 自动加载未定义的类。
PHP7 使用 spl_autoload_register。

__set_statevar_export 在导出类时被调用。
返回重建的对象。

我还在检查这些用途在 2 02 3 年的项目中是否仍然常见。
你自己掂量一下吧。