所以,
字符串,整数,布尔值等。它们是任何编程语言的基础。
现在该介绍复合类型的变量了。
这种类型的变量要掌握起来有点复杂,但是在理解了这一概念之后,在充分利用其脚本功能方面将没有任何问题。
如您所见,
这种类型的变量无非就是将一组标量变量组合为一组。
属于该组的变量有两种,分别是: 数组和对象 ,
也,
为了完成变量部分,现在您将看到另外两种类型的变量,即Resources和Nulls 。
如您所见,复合变量不过是一组标量变量,
当我们要分组和处理许多相同类型的元素时,这很有用,
考虑一下您的同学名单,假设您有(或仍然有)20个。
它的性能不是很好,更不用说管理20个不同的字符串变量的困难了,更简单的方法是创建一个变量(在这种情况下为数组),然后在其中插入所有20个名称。
现在考虑一下身份证中的所有信息,
姓名,姓氏,地址,年龄,身高。
所有信息类型从字符串到整数到影响唯一 对象 (在这种情况下为个人或个人)的浮点数都不同。
在本集中,您将学习如何利用这些复合变量并创建更轻松,更有趣的更好程序。
适用于专家开发人员的PHP基础
这篇博客文章是“ 面向专家开发人员的PHP基础 ”系列文章的一部分。
在本系列中,您将学习PHP的基础知识,但您还将看到许多小技巧和功能,这些技巧和功能只有在书籍和高级教程中才能找到。
根据您的级别,您可能只想偶尔阅读它们或完全跳过它们。
您不必学习这里写的所有内容!
简单阅读,即可发现存在某些功能或技术,并在准备下一个级别时返回这些页面。
面向专业Web开发人员的PHP基础知识(1篇)
PHP 7的构造和注释
如何使用变量(PHP 7)
PHP中的复合变量(数组,对象等)
此外,此博客文章分为4个主要部分
开始吧!
数组变量
数组是将值与键相关联的有序映射,
共有三种不同类型的数组,分别是索引数组,关联数组和多用途数组。
PHP提供了大约80种用途最不同的函数 ,因此在自己对数组创建操作之前,应先寻找可立即使用的东西。
在PHP 7中,可以用两种不同的方式声明数组,
具有短语法和长语法
$automobile = ['Mercedes', 'Ford', 'Alfa'];
$automobile = array('Mercedes', 'Ford', 'Alfa');
即使您使用了不同的语法,上面刚刚创建的两个数组也完全相同。
在仅指定了值但未指定与之耦合的键之后,PHP自动为每个值建立索引,并从0开始以递增的数字编号,
这意味着,如果要从上一个数组中获取“ Ford”值,则必须将索引指定为1。
要检索数组中的值,我们必须使用方括号指示索引或键。
echo $automobile[1];
// Ford
让我们看另一个例子:
$motorbike = [
'Manufacturer' => 'Ducati',
'Model' => '999',
'Class' => 'Sport'
];
在这种情况下,我们指向数组内部的键,
这称为关联数组 ,要检索此数组的值,我们需要使用指定的键。
echo $motorbike['Model'];
// 999
即使使用'='分配命令创建了数组,也无需立即指定所有数组值即可添加值。
$motorbike['Transmission'] = '6-speed';
考虑到也可以在同一数组中创建数字和键。
$array = [0 => 'id', 'name' => 'John', 'surname' => 'Doe'];
$array[] = 2018;
print_r ($array);
Array (
[0] => 'id',
['name'] => 'John',
['surname'] => 'Doe',
[1] => 2018
);
注意,
PHP自动将索引1赋予新值。
到目前为止,您已经看到我们已经将标量类型变量添加为数组中的值,
但,
PHP还为您提供了在数组内添加数组的可能性,
其结果称为矩阵。
$menu = [
'cappuccino' => [ 'espresso', 'steamed milk', 'milk foam' ],
'macchiato' => [ 'espresso', 'steamed milk' ],
'americano' => [ 'espresso', 'hot water', 'more hot water' ]
];
要获得卡布奇诺咖啡的第三种成分,可以使用以下命令:
$Menu[cappuccino][2];
// milk foam
第一个索引指向$ menu数组的第一级,第二个索引指向具有指示键的数组内部的索引,
在这种情况下,“ 卡布奇诺咖啡 ”
请记住,数组在0的基础上工作,这意味着要检索第三个值,您必须指定索引2。
您可以在Topher DeRosia编写的本教程中找到其他示例 。
我打算创建一系列博客文章,以详细描述PHP 7.1中可用的所有数组函数,
要在发布时得到通知,请订阅我的新闻通讯,并免费获得PHP开发人员的最佳书评。
对象变量
在面向对象的编程中 , 对象是类的实例 。
它是一个独特的元素,与可以与之通信的其他对象分开。
要定义一个对象,有必要确定其特性(也称为属性)以及该对象可以执行的操作(通常称为方法)。
实例是给定类的给定对象,每个实例都与其他实例分开,但与同一类的其他对象共享其一般特征。
继续使用先前用于数组的示例,我们可以说福特创造的汽车和奔驰创造的汽车是两个不同的对象
但,
与此同时,
两者都可以通过汽车类实例化,
汽车类的两个元素都有方向盘和发动机,
但是这些属性彼此不同。
如前所述
汽车类的所有对象都有一个引擎,但是每个对象都具有不同的引擎大小(cc)和不同的功率。
这些概念以及诸如封装和多态性之类的其他概念必须在深入的面向对象编程教程中得到最好的描述。
从技术上讲,在面向对象的编程中,程序的实例是对象对应的类在RAM存储器中的表示
由于我已经在我的网站上发布了名为“ OOP的完整指南 ” 的一系列博客文章,请参见下面的链接以获取更多详细信息,我不会再进一步讨论对象和面向对象的编程。
资源变量
资源是一种特殊类型的变量。
这些变量包含对外部资源的引用,
这些资源由PHP语言提供的特殊功能创建和使用。
当前在PHP 7.3中,大约有103种特殊功能,从创建PDF到创建和解析XML,管理套接字的功能,流,打印机,Open SSL,MySQL等。
要检查变量是否为资源类型,请使用is_resource()函数,该函数返回布尔类型的变量(因此为true或false)。
使用资源时,另一个非常重要的功能是get_resource_type() ,它返回一个指示资源类型的字符串。
资源包含打开和管理文件,数据库连接等的引用。
当资源没有更多引用并删除它时,PHP引擎可以终止,这意味着不必手动释放内存。
显然,来自持久数据库连接的链接是该规则的例外,因此必须进行相应的管理
空值
Null是一种特殊变量。
空变量的唯一可能值为NULL。
有三种创建空变量的方法:
第一个,并将常量NULL分配给变量,
第二个,并在变量上使用unset()函数
第三个发生在尚未设置变量时。
这种类型的变量只有一个值,是不区分大小写的空值。
也,
从PHP 7.2开始,无法对空变量进行强制转换。
在NULL变量上有两个主要功能。
第一个是函数is_null() ,如果指示为参数的变量为NULL,则该函数返回布尔值,
第二个函数是unset() ,它接受任何其他类型的变量并将其设置为NULL。
空变量指示缺少值,而不指示值本身。
将这种类型的变量视为内存中的空插槽或缺少信息。
这就是为什么将空变量视为未设置的原因。
他们没有价值,
实际上,变量仅保留以便您可以给它赋值,这在代码中之后非常重要,因为所讨论的变量可以是数组的元素或对象的属性。
结论
我们到了,
这是一个简短的,保持简单的情节,
但是,您所学到的东西将为您服务,即使不是几十年的编程工作也要经过数十年。
我知道,
您现在想知道如何在代码中实现这一新知识,
您可以使用它们做什么以及为什么要首先使用它们。
如果这是您第一次看到复合变量,那么您还想知道为什么要复杂化生活,为什么不仅仅使用标量。
这是一个提示。
练习创建它们,了解数组和对象之间的区别。
当您需要创建一个时,您需要创建另一个。
下一步将学习如何在代码中使用这些变量(标量和复合)。
在控制结构或循环内部使用它们。
本教程将很快发布,敬请期待!
完成后
PHP 7提供了大约一百种功能来编辑,创建,修改您想要的所有变量。
我们还没到那儿。
保持练习,
不要紧张,享受学习过程
现在您知道了基础,是时候开始练习了,
充分利用Blue Host的功能和速度,创建一个帐户,您可以在每月不超过星巴克Caffe Mocha的实时服务器上进行锻炼并查看改进情况。
最初发布在 anastasionico.uk 。
From: https://hackernoon.com/composite-variable-in-php-arrays-object-and-more-da203f779110