Rumah >pembangunan bahagian belakang >tutorial php >PHP的基础知识简单介绍

PHP的基础知识简单介绍

小云云
小云云asal
2018-03-21 13:24:197986semak imbas

PHP是世界上最好的语言”,这句话大家都不陌生吧!可能又会引来口水仗,其实任何编程语言都有各自的优缺点,在不同的领域,不同的环境发挥着不同的作用。我不敢说PHP是世界上最好的语言,但是我敢说“我爱PHP”。我不是什么大牛大咖,就是一个熟悉PHP的一份子。本文适合有些PHP基础的人,属于概述性、总结性的,希望对大家有帮助!

PHP简介

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。已经二十多岁了,语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

PHP基础语法 

一. 名称大小写敏感

    变量名、常量名、数组索引(键名)这些都是大小写敏感的,必须名称保持一致。

    函数名、方法名、类名、魔术常量,NULL,TRUE,FALSE,强制类型转换,这些都是大小写不敏感的

二. 变量,常量

    命名:以“$”标记变量,不能以数字,空格,. 来开头,但可以有汉字,如 $变量=123;

    可变变量: $a = 'aa';   $$a = 'bb';  则 $aa = 'bb';

    引用赋值: $a='123'; $b = &$a; 相当于$a和$b同指向内存的一个空间,改变$a的值,$b也跟着变化。类似于C语言&,不同的是unset($a), $b仍然存在。

    变量类型:整形 int , 浮点 float,  字符串 string , 布尔 boolean, 数组 array, 对象 object, 资源 resource  ,空 null 

    全局变量:全局变量本身就是静态存储方式,所有的全局变量都是静态变量

                    $_SEESION , $_COOKIE, $_POST, $_GET, $_REQUEST, $_FILES, $_EVN, $GLOBALS

    静态变量:static

                   

                    1.静态全局变量在脚本任何地方皆可以使用(在方法体内时,要声明它是全局的)

                    2. 静态局部变量只在函数体内生效,相对安全。所以推荐用静态局部变量

                    静态全局变量,也是全局变量,与$_GET,$_POST,$_FILES等同级,存储位置相同(常量也是)

   静态方法:静态方法不需要所在类被实例化就可以直接使用。 如 Math::MAX($a,$b);  未实例化Math类直接调用静态方法。

    常量:define('常量名', '常量值',$flag=false);  $flag 如果为true ,则不区分大小写,默认为false,区分大小写;

    预定义常量: PHP_OS,  PHP_VERSION, 

                         E_ERROR=1 错误,导致脚本终止;  E_WARNING=2  警告,脚本不终止; E_NOTICE=8 非关键性错误

    魔术常量:魔术常量可以大写也可以小写,是不区分大小写的,全是返回物理路径,即使被包含输出,输出的也是源头代码的信息,非当前包含文件的信息,和$_SERVER 区分.

     (1). __FILE__                当前文件路径
     (2). __DIR__                  当前文件目录
     (3). __LINE__                 在文件文件的那一行 
     (4). __FUNCTION__       在当前文件的那个函数中       返回 函数名
     (5). __CLASS__             在当前文件中的那个类中       返回 类名

     (6). __METHOD__          在当前文件的类中的那个方法中 返回 类名::方法名

  总结:

        (全局)常量:(默认常量都是全局的)存储在(静态)数据段

           变量: 全局变量(静态数据段),局部变量(存储在栈中),静态变量(不管全局/局部都存储在静态数据段)    

 三. 类型转换

      1.  获取变量的类型   getType($a);

      2. 设置变量的类型   setType($a ,'类型');  类型包括boolean,integer,float,string,array,object,null

      3. 强制类型转换,(同上类型)

          $b = (int)$a;   转换为整形

      4. 类型转换函数

           intval(),转成整形;  floatval();转成浮点型;    strval();获取变量的字符串

      5. 判断类型

          is_bool/int/float/string/array/object/resource/null
          is_numberic();'//判断是否为任何类型的数字或者数组字符串

          is_callable();//判断是否为有效函数名称

四、运算符

      算术运算符:加 +,减 -,乘 *, 除  /,取模 %, 自增 ++  ,自减 --

      连接运算符 :   .      ,如   $str = 'one' . 'two';    则  $str = 'onetwo';

      赋值运算符: =, += , -=, *=, /=,  %=,  .= 

      比较运算符:   >, >=,  <, <=,==, ===, !=, !===, <>

      逻辑运算符:逻辑与 and ,&&;  逻辑或  or ,||;   取反  not,! ;  逻辑异或  xor(两边不同返回true,相同返回false)

      位运算符:  &(按位与), |(按位或) , ^(按位异或);    ~(按位取反)    ; <<(按位左移) ; >>(按位右移) 

      其他云算符:

                   ?:  三目运算符,  @ 忽略错误, => 数组下标, -> 调用对象的属性和方法

                   instanceof 类型运算符 ,   反引号(··, 不是单引号)执行shell语句

五、流程控制

      1. 判断语句

           IF语句

          if(条件) { 条件为真时,执行的语句}  else {条件为假时,执行的语句}

          三种形态:

           if( 条件 ){  真,语句  } else {  假, 语句}

           if ( 条件 ){ 真, 语句}

           if ( 条件 ){ 真, 语句} elseif( 条件 ){ 二条件为真,语句}.....else{  假,语句};....表示可以多次elseif。

           SWITCH语句

           switch( 条件 ) {  

                    case  1条件:

                                语句; break;

                    case  2条件:

                             语句; break;

                    ....

                    default:  (这个可以缺省)

                            默认语句;

             }

        

      2. 循环语句

           WHILE语句: while(条件){   条件为真,执行里面的语句; 条件为假,退出循环 } 

           DO...WHILE语句:do{ 第一次直接执行循环体,第二次开始,根据条件为真执行,为假退出循环} while(条件)

            FOR语句:for( 初始值;  条件;  改变条件的语句) { 循环体中的语句}. 如 for($i=0; $i<8; $i++ ) { echo $i ;}

   3. 退出循环体的语句

        continue,break;exit 区别:

        continue 跳过当前循环,循环还在继续

       break 跳出当前循环,循环终止

        exit; 终止当前脚本,这行代码后边的代码不执行了。

 相关推荐:

php基础知识笔记分享

php基础知识总结(新手必备)

PHP基础知识

Atas ialah kandungan terperinci PHP的基础知识简单介绍. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn