PHP基础:简单操作php对象

PHP零基础入门

对象实际上是有点混乱的东西,我们已经知道创建一个关联数组包含相关信息,他们可以是一个单元,和对象。

例如:

$person = array(
‘name’=>’林大’,
‘job’=>’开发者’,
);

Print_r()或者var_dump($person)

但我们些上面这些信息的时候,作为一个对象会更加有意义。
我们可以这样想,我们有这个人($person),这是一个唯一的人$person
但所有的人($person)都会有着相似的特性
人会有姓名,人会有一份工作,有肢体,有些人叫林大,有些人叫林一
所以他们都是出处相同,但每个都是独一无二的
这就是我们如何看待对象或类实例

先快速了解classes

可以这样考虑,如果我们要拿这个数组并让它代表一个类
我们要有class person和最好的办法就是你认为一个class作为一个blueprint
一个的蓝图是什么,所有人分享什么特征
所有人都会分享一个名字,所以我们有一个选择
这个蓝图将定义一个名字
name = $name;
$this->job = $job;
}
所以认为这是动词,所以公共函数叫communicate()
{}代表communicate()的动作,在{}些执行代码
Public function communicate()
{
一个人可能使用手语、使用某种外星人沟通、人像我们就用嘴巴
我们将返回communicating,代表沟通的行为

Return ‘communicating’;
}

我们已经定义了蓝图一个人是什么,应该能够做的

所以现在一旦我们有蓝图,我们可以有特定的实例或对象

例如,一个人的名字是abc,一个人是黑人,有个白人,有个开发者,另外一个是老师或者营销专员,它们都具有相同的特征

这是蓝图,这是我们的类

现在要创建一个新的实例(Public function __construct($name,$job)),我们将创建(new Person)
}

$p= new Person;
但现在我们需要能够给它的信息,我们有这些公共name和公共job,这就是我们所说的属性

插入1

我不期望你遵循所有这一切,我们将要运行这个特殊功能,一旦我们创建这个新的实例,或者新的对象(new Person),这个new Person将接受名称(name)和工作(job)的参数
Public function __construct($name,$job)

我要继续添加,
$p= new Person(‘林大’,’技术员’);

我们将在实例上设置这些属性(Public $name;public $job;)

插入2
所以现在我可以说这个名字name,这是要引用实例,equals名字($name)
所以如果你只是学习这个,这应该是非常混乱的

我只想给你一个高级别的概述在我们挖掘对象之前

Var_dump($p);

看到class Person,这些值,姓名和工作被设置
因为我们创建了这个新的实例,所以这个函数自动运行(Public function __construct($name,$job))。

现在我们可以这样做
Echo $p->communicate();
因为所有人都有同样的特点,我们知道他们可以沟通,现在我们进行沟通
输出‘communicating’

如果我们想要沟通更广泛,也许我们可以有一种风格($style),改进:
Public function communicate($style)
{
Return ‘communicating with’ . $style;
}

执行报错,因为$style不是默认,所以我们设置$style = ‘voice’,

Public function communicate($style = ‘voice’)
{
Return ‘communicating with’ . $style;
}

输出:commmunicating with voice

我们可以覆盖这个输出:
Echo $p->communicate(‘dddd’)

输出:commmunicating with dddd

P是我们的对象,并访问该对象内的属性
我们使用一个新语法->
所以使用数组我们知道我们使用方括号,对象我们使用这个箭头(->)

但是很多时候,您希望能够方便使用对象
实际上并不想创建这个蓝图或类

====第二部分===
在这种情况下,我们可以使用所谓的通用类,叫stdClass

例如,如果我们在person之前采取相同的代码,=。

$person = stdClass

创建这个蓝图的新实例
想到房子,你的蓝图是房子,在你的蓝图中有几百个房子,红,蓝,绿
它们是分开的,但它们都具有相同的结构

===插入3===
Class name{
Public function __call()
{
这节课就不说这个
}
}
==========

所以现在我们创建了这个新的实例
$person = new stdClass

我可以说person,我可以设置属性
$person->name = “林大”;
$person->job= “技术员”;

Var_dump($person);

输出的东西相同
这是字面上只是一个空的泛型类,你可以填写

公共属性,公共只是意味着它可以从我们的实例访问,它不仅限于该类

输出//注释var_dump

Echo $person ->job;

信息作为对象而不是使用数组,简洁更加直观的

你不能添加方法

所以如果我们要做个人沟通($person->communicate)等于功能(function()),然后我们返回沟通,这实际上是不会工作的

$person->communicate = function(){
Return ‘communicating’
}

如果我输出
Echo $person->communicate();

报错因为stdclass没有定义

如果我们正在尝试向这个对象添加一个方法,而不是真正的工作方式

你可以使用自己的类来定义它

或者也可以使用类名的方法,例如公共函数调用。

插入3

您可以使用stdclass创建一个通用对象,所有这一切都是一个通用的空类,您可以填写并使用如果你需要。

最后一点是我们可以将数组转换成一个对象。

注释
$person = new stdClass
$person->name = “林大”;
$person->job= “技术员”;

$person = array(
$person->name = “林大”;
$person->job= “技术员”;
)

将其转换为对象

Var_dump($person);

输出是数组

数组变成对象
Var_dump((object)$person);

通过在括号内的对象继承变量名

语法如下
转换成对象
(object)

你想把它转换成一个整数,你可以这样做
注释var_dump
echo(int)’5’;

如我们要知道是什么类型
我们有字符串我们有整数我们有数组我们有对象我们可以使用这个函数获取类型
使用gettype函数

Echo gettype((int)’5′);

删除Int,返回字符串

取消注释
Var_dump($person);
Var_dump((object)$person);//对象

在这里输出

[2] Echo $person[‘name’];//这一个我们可以用这种语法首先回应人

[1] $o = (object) $person;

Echo $o->first;/第二个我们可以用这个语法首先回应O

first = “John”;
//$person->last = “Doe”;
//$person->job = “Teacher”;
$person = array(
‘first’ => ‘John’,
‘last’ => ‘Doe’
);
var_dump($person);
echo $person[‘first’];
$o = (object) $person;
echo $o->first;

接近10年的互联网从业经验,精通Scrum敏捷软件开发的方法,从事互联网产品设计,开发,测试,运营,案例不少于20个,发现自己最喜欢的工作是做外贸营销,外贸SEO,特别喜欢谷歌优化。从2017年3月开始坚持在群161510483直播谷歌SEO和WEB前端开发技术,只要加进来坚持学习零基础也能够学会。

Last modified: 2019年3月21日

Previous Story

PHP零基础入门

第八节 PHP函数

PHP函数:可以重复使用的代码在需要的地方调用函数就可以了,首先写function这个关键词,然后这就是你将如何引用该函数或者你将如何调用该函数.

...

Next Story

PHP零基础入门

PHP基础:Heredoc 结构

Heredoc结构:表达字符串的方法是用 heredoc 句法结构:<<<在该运算符之后要提供一个标识符,然后换行.

...