加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP变量和数据类型概述

发布时间:2021-05-11 10:19:17 所属栏目:PHP教程 来源:互联网
导读:在PHP程序中存储信息的主要方法是使用变量。以下是关于PHP中变量的最重要的知识。 PHP中的所有变量都用一个前导的美元符号($)表示。变量的值是最近赋予的值。变量赋值使用=运算符,左边的变量被赋予右边的表达式的值。变量不需要在赋值之前声明。PHP中的变
在PHP程序中存储信息的主要方法是使用变量。以下是关于PHP中变量的最重要的知识。
 
PHP中的所有变量都用一个前导的美元符号($)表示。变量的值是最近赋予的值。变量赋值使用=运算符,左边的变量被赋予右边的表达式的值。变量不需要在赋值之前声明。PHP中的变量没有内在的类型 - 变量使用前不要关心它用来存储的是一个数字还是一串字符。分配之前使用的变量所具有默认值。PHP在自动将类型从一个类型转换为另一个类型也没有问题。PHP变量与Perl中的变量是相似的。
PHP中共有八种数据类型,我们用它来构造变量 -
 
整数 - 是整数,没有小数点,例如:123, 889等。双精度 - 是浮点数,如3.14159或69.1。布尔值 - 只有两个可能的值是:True或False。NULL - 是一个只有一个值的特殊类型:NULL。字符串 - 是字符序列,如:"abc123","PHP支持字符串操作"等。数组 - 是其他值的命名和索引集合。对象 - 是程序员定义的类的实例,它可以打包特定于类的其他类型的值和函数。资源 - 是特殊变量,用于存放对PHP外部资源的引用(如数据库连接)。
前五种称为简单类型,后两种(数组和对象)称为复合类型 - 复合类型可以包装其他任意类型的任意值,而简单类型则不能。我们将在本章中仅解释简单的数据类型。而数组和对象 将分开解释。
1. 整型整型是整数,它们没有小数点,如2218。它们是最简单的类型,它们对应于简单的整数,包括正数和负数。 整数可以分配给变量,也可以用在表达式中 -
<?php
$int_var = 2212;
$another_int = -2212 + 3578;
PHP
整数可以是十进制(10进制),八进制(8进制)和十六进制(16进制)格式。 十进制格式是默认值,八进制整数用前导0来指定,而十六进制有一个前导0x。
对于最常见的平台,最大的整数是(2 ** 31-1或2147483647),最小的整数是(-2 ** 31-1或-2147483647)。
2. 双精度双精度的值类似于3.14159或249.21这样的浮点值。 默认情况下,双精度打印需要最小小数的位数。例如下面代码 -
<?php
   $double1 = 2.2888800;
   $double2 = 2.2111200;
   $double3 = $double1 + $double2;
 
   print("$double1 + $double2 = $double3 ");
?>
PHP
执行上面示例代码,得到以下结果 - 
2.28888 + 2.21112 = 4.5
Shell
3. 布尔类型布尔类型只有两个可能的值,即:TRUE和FALSE。PHP提供了几个常量来用作布尔值:TRUE和FALSE,可以像这样使用 -
<?php
if (TRUE)
   print("This will always print<br>");
else
   print("This will never print<br>");
?>
PHP
将其他类型解释为布尔值
以下是确定布尔类型中任何值的“真值”的规则 -
 
如果该值是一个数字,那么如果完全等于零则为假,否则为真。如果值是一个字符串,如果字符串为空(字符为零个)或字符串为"0",则为false,否则为true。NULL类型的值总是为false。如果该值是一个数组,如果它不包含,那么它的值是false,否则是true。 对于包含值的对象,意味着它拥有一个已经赋值的成员变量。有效的资源是true(尽管一些成功返回资源的函数在失败时会返回FALSE)。不要使用双精度(double类型)作为布尔值。
当在布尔上下文中使用时,以下代码每个变量都具有嵌入其名称中的真假值。
<?php
$true_num = 3 + 0.14159; // 真值
$true_str = "Tried and true"; // 真值
$true_array[49] = "An array element";// 真值
$false_array = array(); // 假值
$false_null = NULL; // 假值
$false_num = 999 - 999; // 假值
$false_str = ""; // 假值
?>
PHP
4. NULL值NULL是一个只有一个值的特殊类型:NULL。要给一个变量赋予NULL值,可以像下面这样分配它 -
<?php
$my_var = NULL;
PHP
常量NULL特殊常量大写,但实际上是不区分大小写的; 也可以这样书写 -
<?php
$my_var = null;
PHP
已分配NULL值的变量具有以下属性 -
 
它在布尔上下文中评估求值为FALSE。当使用isset()函数进行测试时,它将返回FALSE。
5. 字符串它们是字符序列,如"PHP支持字符串操作"。以下是字符串的有效示例:
<?php
$string_1 = "这是一个双引号的字符串";
$string_2 = '这是一个稍长的单引号字符串';
$string_11 = "这个字符串有11个字符";
$string_0 = ""; // 一个字符串为零的字符串
$a = 10;
$b = 20;
$sum = $a + $b;
$string = "$a + $b =  $sum"; // 输出为:10 + 20 = 30
$string = "$a + $b =  ".$sum; // 输出为:10 + 20 = 30
PHP
单引号的字符串几乎是字面上的,而双引号的字符串用它们的值替换变量,以及特别解释某些字符序列。
<?php
   $var = "name";
   $literally = 'My $var will not print!';
 
   print($literally);
   print "<br/>";
 
   $literally = "My $var will print!";
   print($literally);
?>
PHP
执行上面示例代码,得到以下结果 - 
My $var will not print!
My name will print!
Shell
对字符串长度几乎没有限制 - 在可用内存的范围内任意长度。由双引号分隔的字符串(如:"this")在PHP中通过以下两种方式进行预处理 -
 
某些以反斜杠(``)开头的字符序列被替换为特殊字符;变量名称(以$开头)被替换为其值的字符串表示形式;
转义字符序列替换是 -
 
n被替换为换行符;r被替换为回车符t被替换为制表符$被替换为美元符号($)"被替换为回车符"被替换为单个双引号(")'被替换为单个单引号(')
6. Here-Doc界定符可以使用here-doc将多行分配给一个字符串变量 -
<?php
   $channel =<<<MY_XML
 
   <channel>
      <title>今天学习什么?</title>
      <link>http:///www.0888zz.com/ </link>
      <description>选择你喜欢的内容学习吧!</description>
   </channel>
MY_XML;
 
   echo <<<END
   This uses the "here document" syntax to output multiple lines with variable <br/>
   interpolation. <br/>
   Note that the here document terminator must appear on a line with <br/>
   just a semicolon. no extra whitespace!
   <hr/>
 
END;
 
   print $channel;
?>
PHP

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读