PHP

php学习笔记

2018-05-30  本文已影响0人  阿狸__小姑凉

1

PHP文件末尾结束标记可以不要,在有些情况下当使用include和require的时候省略掉会更好些,这样不期望的空白符就不会出现在文件末尾,之后仍然可以输出响应标头。在使用输出缓冲的时候也会很方便

2 类型

1)简介
四种标量类型
    boolean
    integer
    float
    string
三种复合类型
    array
    object
    callable
两种特殊类型
    resource
    null

当需要判断数据类型的时候用gettype函数,要检验某个类型的时候用is_type函数(is_int())。
当需要将一个变量转换成某个类型的时候,可以对其使用强制转换或者settype()函数。

2)boolean

当转换成boolean时,以下的值被认为是false

3)整型

整型值可以使用十进制,十六进制,八进制或者二进制表示,在前面加上可选的符号(+ 或者 -)
二进制表达的Integer从php5.4.0开始使用
要使用八进制表达,数字前面必须加上0,使用十六进制必须加上0x,要使用二进制就必须加上0b

<?php
    var_dump(25/7);         // float(3.5714285714286) 
    var_dump((int) (25/7)); // int(3)
    var_dump(round(25/7));  // float(4) 
?>

PHP 7.0.0 起,NaN 和 Infinity 在转换成整型时,不再是 undefined 或者依赖于平台,而是都会变成零。

4)浮点型

不要比较链各个浮点型数值的大小
对于其他类型的值,要先转换成整型。再转换成浮点型

5)字符串

单引号:要表达一个单引号本身的时候需要一个反斜杠\来转义。要表达一个反斜线本身的时候,则需要两个反斜线\。其他任何方式的反斜线都会被当成反斜线本身,也就是说如果想使用其他转义序列例如\r或者\n,并不代表任何特殊含义,就单纯是这两个字符本身

Note:不像双引号或者heredoc语法结构,在单引号字符串中的变量和特殊字符的转义序列将不会被替代

双引号:和单引号字符一样,转义任何其他字符都会导致反斜线被显示出来
用双引号定义的字符串最重要的特征是变量会被解析
heredoc:<<<。在这个运算符后面提供一个标识符,然后换行,接下来是字符串string本身,最后要用前面定义的标识符作为结束标识。

    要注意的是:结束标识符这行除了可能有一个分号(;),绝对不能包含其他字符。这意味着标识符不能缩进,分号的前后也不能有任何空白或制表符。
    更重要的是结束标识符的前面必须是个被本地操作系统认可的换行,比如在unix和max os系统上是\n,而结束定界符之后也必须紧跟一个换行。
    
static $bar = <<<LABEL
Nothing in here...
LABEL;
------------------------------------------
<?php
echo <<<"FOOBAR"
Hello World!
FOOBAR;
?>

Nowdoc:这种结构类似于单引号字符串,不进行解析操作。这个种结构很适合用于嵌入PHP代码或者其他大段文本而无需对其中的特殊字符进行转义。

<?php
$str = <<<'EOD'
Example of string
spanning multiple line
using nowdoc syntax.
EOD;
6)Array数组

PHP中的数组是一个有序映射。映射是一种把values关联到Keys的类型。此类型在很多方面做了优化。因此可以把它当成真正的数组,或列表。散列表,字典,集合,栈,队列以及更多可能性。由于数组元素的值也可以是另一种数组,树形结构和多维数组也是允许的。
key有以下的强制转换

7)对象

对象初始化
要创建一个新的对象object,使用new语句实例化一个类:

<?php
  class foo
  {  
      function do_foo()
      {
          echo "Doing foo.";
      }
  }
  $bar = new foo;
  $bar->do_foo();
8)资源

由于资源类型变量保存有为打开文件,数据库连接,图形画布区域等的特殊句柄,因此将其他类型的值转换成资源没有意义

9)Null

在下列情况下一个变量被认为是null:

3 变量

PHP中的变量用一个美元符号后面跟变量名来表示。变量名是区分大小写的。
变量名与PHP中其他的标签遵循相同的规则,一个有效的变量名由字母或者下划线开头,后面跟上任意数量的字母,数字,或者下划线。

$this是一个特殊的变量,他不能够被赋值

PHP还有一种方式给变量赋值,引用赋值。这意味着新的变量简单的引用了原始变量。改动新的变量将会影响到原始变量。

只有有名字的变量才可以引用赋值。

4 常量

常量是一个简单值的标识符,如同其名称所暗示的,在脚本执行期间该值不能改变。常量默认认为大小写敏感。传统上常量标识符总是大写的。
常量名和其他任何PHP标签遵循一样的命名规则。合法的常量名以字母或者下划线开始,后面跟着任何字母,数字或者下划线。

名称 说明
_ _ LINE _ _ 文件中的当前行号
_ _ FILE _ _ 文件的完成路径和文件名。如果用在被包含文件中,则返回被包含的文件名。总是包含一个绝对路径
_ _ DIR _ _ 文件所在的目录。如果用在被包含的文件中,就会返回被包含的文件所在的目录。他等价于dirname(_ _ FILE _ _)。除非是根目录,否则目录中名不包括末尾的斜杠
_ _ FUNCTION _ _ 函数名称。返回该函数被定义时候的名字。在PHP5之前都是小写的
_ _ CLASS _ _ 类的名称。从PHP5开始本常量返回该类被定义时候的名字。在PHP4的时候总是小写
_ _ TRAIT _ _ trait的名字
_ _ METHOD _ _ 类的方法名
_ _ NAMESPACE _ _ 当前命名空间的名称
上一篇下一篇

猜你喜欢

热点阅读