PHP基础语法

1. php中脚本以.php后缀名时,才会被web服务器解析,尝试过以html保存,结果没有解析成功;

2. 以<?php  ?>作为语言标记包含整段php代码,php的含义是超文本预处理器,一个语言标记中的php代码不要求完整,可以通过多个分离的语言标记完成一个完整的php程序。这就意味着可以在html中的任意标签之间插入php代码来实现一些逻辑:

<html>
<head>…</head>
<body>
<?php
    if ($bool) {
?>
    <p>This is true.</p> 
<?php
    } else {
?>
    <p>This is false.</p>
<?php
    }
?>
<body> 

   <?php ?> 是xml风格语言标记,也是标准风格标记,同时还有<?  ?>、<% %>等标记,其中<?  ?>会混肴XML文档的申明,而<% %>是ASP、ASP.NET风格标记,默认情况下会被禁用,所以可移植性也较差;

3. 以分号; 结尾;

4. 使用c ,c++,perl风格注释:// 、# 、 /* */;

5. 程序中忽略空白;

6. php对函数和类名大小写不敏感,但是对变量名大小写敏感;

7. 变量以$开头申明,并且可以以$$实现内插:

    $hi = “hello”;
    $$hi = “world"; 

此时,等价于定义两个变量:$hi = "hello";$hello="world";

8. 以&作为引用赋值:$foo = 'Bob';$bar = &$foo;php中的引用含义为:两个变量的值互相关联,一个变量的值改变会引发相同引用的变量值改变,但是一个变量的消失不会引起另一个变量的消失:

NewImage

NewImage

9. PHP变量类型:PHP支持的四种标量类型:bool、int、float、string;支持两种复合类型:array、object,其中array包含字典和列表;两种特殊类型:resource、NULL;以及一些伪类型。

    通过var_dump()函数,可以显示一个变量的类型以及值。

10. PHP中的字符串在单引号中不会对其中的内容进行解析,在双引号中会解析其中的内容,和perl类似实现字符串的变量内插。双引号中的解析规则同perl。支持定界符"<<<"同perl。

11. PHP中通过 $arr = array("foo" => "bar", 12=>true);定义一个数组,可以看到,其实是一个字典;

12. 使用class关键字定义类,在类中,使用var定义成员属性,function定义方法;使用new关键字实例化对象,使用->箭头来访问对象中的属性和方法:

<?php
    class Person{
        var $name;
        function say(){
            echo "Doing foo.";
        }
    }
    $p = new Person;
    $p->name = “Tom”;
    $p->say();
?>

13.资源类型保存的是外部资源句柄;

14. NULL类型表示一个变量为空;

15. 伪类型:

     mixed表示一个参数可以接受多种不同的类型;

    number表示一个参数可以是int或者float;

    callback表示一些函数中传入的函数参数,以函数名字字符串传递;可以传递任何内置的或者用户自定义的函数,但是除了:array()、echo()、empty()、eval()、exit()、isset()、list()、print()、unset();

16. 不同类型的数据在运算时,会进行自动转换,转换规则同perl,也可以强制转换类型,如: (int) $foo等;

17. 类型检测函数:is_bool()、is_int()、is_array()、is_object()、is_string()、is_null()、is_numeric()、is_callback()、is_scalar()等等类似函数;

18. 常量:通过define("FOO_INT" : 100)来定义一个FOO_INT的常量,常量不以$打头,只能用define定义,并且不能被赋值、重新定义、取消定义,define()函数接受第三个布尔值参数,为true时不区分常量大小写,常量只能是标量;

19. 预定义常量:

NewImage

特殊常量:__FILE__:当前文件名;__LINE__:当前行号;__FUNCTION__:当前的函数名;__CLASS__:当前类名;__METHOD__:当前对象的方法名;

20. 常规运算和perl 相同,但是取消了perl中字符串比较的运算符,统一使用<、>、==等比较运算符。一些特殊的运算符:

    和perl有相同的执行运算符``;

    错误控制运算符:@,可以在表达式之前添加@运算符,忽略可能出现的错误;

    instanceof 类型运算符,判断一个对象是否来自指定的类

21. 分支结构:PHP中分支结构:if/elseif/else、switch等语法和c语言相同,switch同样需要break退出每一个case;

22. 循环结构:PHP中使用for、while、do-while等实现循环,语法和c语言相同,for条件为三段式,不是foreach;

    退出循环关键字:break,break接受一个数字参数来指定跳出几重循环(不错);

    跳出当前循环关键字:continue,同样可以接受一个数字来指定跳出几重循环;

    exit()语句退出整个脚本,同die();

原文地址:https://www.cnblogs.com/lyon2014/p/4612153.html