php变量变量引用
介绍
我们所有人都在寻找捷径,以更快地到达想要去的地方,
谁从未从未翻阅过书的某些页面,甚至没有直达上一章?
尽管一开始这似乎是个好主意,但我已经在几篇博客文章中分享了许多理由,说明渐进式改进比直接玩有趣的东西要好得多,也更有生产力。
事实是,如果您想编写几年的代码,并且不想在成为Web开发人员的职业生涯的头几年甚至几个月不疲倦,则必须学习基础知识,
我告诉你一个秘密
即使经过多年的经验,当您认为对基本主题一无所知时,拿起第一本书或阅读的第一篇文章中的某个, 您总会发现一段您没有注意的段落或您之前没有完全了解的概念。
实际上,这篇文章适合所有人。
作为初学者,他们才刚刚开始使用PHP向专业程序员开始,他们将发现他们不知道的代码功能。
即使是关于基本主题(例如我们将在下面看到的内容)的内容,
实际上,这里有关于PHP中变量的一般和详细信息。
我将为您提供有用的见解,以了解什么是最佳方法以及如何为您的Web应用程序声明和使用变量。
这篇文章是“专家程序员PHP基础”系列文章的一部分,单击下面的链接以获取到目前为止发布的其他文章。
编写程序时,无论是简单的待办事项列表,还是面向全球客户的银行的集成支付系统,都需要使用变量。
变量用于存储数据。
将变量视为盒子。
在每种编程语言中,“盒子”都有一个写在外部的名称(即调用该盒子的名称)和一个“事物”的内部。
如前所述,每个盒子(变量)都有一个名称,当我们给盒子命名并定义其中的内容时,我们就是说给变量赋了一个值。
盒子里面可以有不同类型的“事物”,
这些变量实际上分为三大类:
标量类型变量,复合变量和资源。
标量是最基本且最容易理解的。
它们分为:
复合材料要复杂一些,但没有什么不可能的,
他们是:
- 数组
- 对象
- 可赎回
- 可迭代
然后我们有了资源 ,这些资源可以简单地看作是,例如,PHP外部的对象,如文件,数据库连接。
最后,
我们有NULL类型,用于没有赋值的变量,
不能将其传输为NULL类型,但可以为变量分配NULL值。
现在,
PHP是一种松散类型的语言,这意味着变量可以在运行时更改其内容。
事实上,
该值可以从字符串更改为整数,然后更改为布尔值,而不会在脚本中造成任何问题,甚至不会引发任何错误。
当涉及变量时,要理解的基本部分是所谓的转换
也就是说,编程语言如何看待变量。
如您所见,PHP变量可以更改类型并了解这些更改在后台如何发生,这是Web开发人员工作的重要组成部分(更不用说将避免的偏头痛数目)。
假设您有一个类型字符串变量$ str包含“ 10”,
想象一下,下面的几行将变量与另一个数字相加,
比方说
$str = "10";
$num = $str + 5;
// $num will take the value of 15
PHP足够聪明,可以理解其意图是将字符串中包含的数字10与数字5相加。
该操作将成功解析而不会出现错误,并且$ num的值为15。
PHP这么做的理由被称为“铸造”,我相信您已经了解到它是我们袖子中的强力王牌,但同时又很容易变成一把双刃剑。
您将在下面看到各种变量及其声明,有关更多信息,我邀请您阅读官方手册。
布尔变量
了解布尔变量的工作方式是编程中最简单的事情。
布尔变量仅指示一位,因此仅指示两个值:1或0,可以为true或false,yes或no,
没有其他选择,
布尔值是在条件语句(如if,else和case-case)中考虑的值。
关于对布尔变量进行强制转换时要牢记一些规则。
空数组计为0或false;否则为0。 除非您考虑空刺,否则它们始终被认为是真实的; 如果字符串包含数字0,则布尔值被视为0或false;否则,返回0。 如果字符串在转换为布尔值时包含任何其他数字,则该值为true;
每个不具有0值的整数或浮点数都将被视为true,这意味着负值也将为true。
techterms.com的专家们对Boolean的含义以及如何在搜索条件和搜索引擎上使用Boolean进行了简要说明。
整数变量
整数是属于整数类别的所有数字。
对于整数,我打算包括所有负数和正数0。
也应视为以10为底的整数,
事实上,
在PHP中,您可以使用基于二进制,八进制,十进制和十六进制的数字;
您必须使用前缀来设置要使用的基准类型
0b表示基于二进制的数字,
“ 0b1100100”代表以2为底的值100
0后跟数字表示该数字应视为八进制
100(基数10)在基数(8)中变为0o144。
使用您打算表示十六进制数字的前缀为'0x
0x64是要用于100(以10为底)的十六进制值。
可用数字的范围取决于计算机的功能。
整数类型的变量可以具有的最大值为20亿 (对于运行32位的PC),对于64位平台,约为9E18,即18个零 。
64位平台中整数类型的最大值为1000000000000000000
您可以使用PHP_INT_SIZE,PHP_INT_MAX和PHP_INT_MIN之类的常量来修改此限制。
但是除非您为Elon Musk工作,并且您负责开发使我们登陆火星的软件,否则我真的不鼓励使用它们。
(如果您已经决定使用PHP,那么祝您好运)。
老实说,可以不使用常量来克服此限制,但是变量将不再被视为整数,而是将其转换为浮点数,
这是PHP官方手册中提供的示例:
$number = 2147483647;
// this is an integer on 32-bit machines
$number = 2147483648;
// this is a float on 32-bit machines
您还可以使用关键字(int)或(integer),然后加上要转换的数字,将变量转换为整数并使其为整数。
还要注意,将值强制转换为整数时,PHP不会在上下四舍五入,而只会舍去小数部分
100.57变成100
-100.57变成-100
当您将字符串转换为整数时,除非字符串以数字开头,否则它将给出0
“ 10点”变成10;
“ 10点半”变为0;
最后要考虑的是处理无理数。
看这里,
echo (int) ((0.1 + 0.7) * 10);
您希望结果为0.8对吗?
不完全是。
回显的值为0.7。
0.7可以表示为基于小数的有理数,但不能基于2。
由于只能保存数量有限的位,因此在这些计算过程中不可避免地会损失精度。
为了清楚起见,上面代码的内部表示将类似于7.9999999999999991118…
准确度取决于运行PHP的机器,
下面有一个由Andrew Beak创建的小片段,可让您检查系统的准确性级别。
该值称为机器ε,即单位舍入,是计算中可接受的最小差异。
$pi = 3.14159625;
Indian $ = 3.2; $epsilon = 0.00001;
if (abs($pi - $Indian) < $epsilon) {
echo "Those values look the same";
} else {
echo "Those values are different";
}
此代码检查值是否等于五个精度。
浮动变量
与整数,浮点数或双数不同,所有数字都不是整数,
为简单起见,带逗号的数字应视为浮点数。
尽管就整数而言,这些变量的范围取决于我们工作平台的能力,但是PHP使用一种称为IEEE 754的标准来将错误的影响降至最低。
但是,我们已经看到,对于诸如0.1和0.7的值,没有确切的表示涉及一些问题。
关于浮点变量的转换,过程相当简单,并取决于源变量的类型。
要对整数求整数,过程几乎是自然的,只需将数字加0.n就可以了! 这是浮点数或双数。
字符串的过程稍微复杂一些,但是如果您继续遵守规则并且字符串包含适当的值,则不会有任何错误。
$var = 10 + "100.3";
// $var is afloat and its value is 110.3
$var = 7 + "11.2 kg of ham";
// $var is a float and its value is 18.2
字符串变量
在描述了包含数字的变量之后,现在让我们谈谈包含字符的变量,
一个字符值得一个字节,这意味着PHP只有256个字符可用。
PHP字符串是一系列字节。
PHP中存储的有关字符串的信息是字符串的长度和内容,
32位系统支持最大2GB的字符串,而64位系统没有任何特定限制。
可以使用两种不同的方法声明字符串,
简单方法不评估控制字符和变量,而复杂方法则考虑变量的值。
要使用简单方法,您需要使用单引号,而对于复杂方法,您需要使用双引号
$language = 'PHP';
$simple = 'I code in $language';
echo $simple;
// The string echoed will be: I code in $language
$complex = "I code in $language";
echo $complex;
// The string echoed will be: I code in PHP
如您所见,双引号会评估$ language变量并显示其实际值。
这是一个巨大的优势,因为它使您无需使用串联就可以创建完整的文本字符串,我认为这使代码更易于阅读
$city = 'London';
echo 'I am a Web Developer based in ' . $city;
echo "I am a Web Developer based in $city";
你明白我的意思吗?
我花一些时间向PHP解析器指定要评估变量的一个小技巧是使用花括号。
$burger = "hamburger";
echo "I love $burgers";
// I love $burgers
echo "I love {$burger}s";
// I love hamburgers
由于$ burgers不是定义的变量,因此在第一个示例中,PHP将不对其求值并显示纯字符串,在第二个示例中,花括号表示要对变量进行求值,因此它将在复数上下文中显示。
您将看到更多示例充分利用大括号和字符串,例如在评估数组和对象中的数据时使用大括号。
结论
正如您已经看到的那样,编程的基本要素是变量要隐藏很多,必须以充分理解的方式加深。
在此博客文章中,我们重点介绍了标量变量,它们是最常见和基本的变量,
敬请关注,
在本系列的下一集中,我们将研究复合变量,例如空数组对象和资源。
另外,如果您还没有阅读本系列的其他部分
PHP的复兴
PHP 7的构造和注释
既然您已经了解了PHP的其他基本概念,那么现在就可以练习并开始在线创建自己的品牌了。
您现在可以使用托管服务(例如Blue Host)来做到这一点,该服务允许您创建一个帐户并将您的工作放到互联网上的全球展示柜中。
最初在 anastasionico.uk上 发布 。
翻译自: https://hackernoon.com/how-to-use-variables-php-7-8e4fa6e725ff
php变量变量引用