上海古都建筑设计集团,上海办公室装修设计公司,上海装修公司高质量的内容分享社区,上海装修公司我们不是内容生产者,我们只是上海办公室装修设计公司内容的搬运工平台

php学习

guduadmin463月前

php基础语法

一 php程序

1.php标记

开始标记中间写 PHP 代码

当解析一个文件时,PHP 会寻找起始和结束标记,也就是告诉php 开始和停止解析二者之间的代码。此种解析方式使得PHP 可以被嵌入到各种不同的文档中去,而任何起始和结束标记之外的部分都会被 PHP 解析器忽略

2.php代码

echo  ----->可以输出一个或多个字符串,用逗号(,)隔开

print   ----->只允许输出一个字符串

php学习,第1张

3.语句结束符 ;

4.注释

//  ----->单行注释

/*

*/   ------>多行注释

二 php变量

 1、声明变量

2.赋值运算符

=

3.变量命名规则

  • 开头不能用数字
  • 中间不能有空格

    php学习,第2张

    php标量类型介绍

    一 php标量数据类型

    php学习,第3张

    echo 输出数据值,开发时使用

    var_dump 可以打印数据类型和值,测试时使用 

    1.布尔型

    布尔型通常用于条件判断

    ';
        $y = false;
        var_dump($y);
    ?>

    php学习,第4张

    2.整型

    • 整数不能包含逗号或空格
    • 整数是没有小数点的
    • 整数可以是正数或负数
    • 整型可以用三种格式来指定: 十进制、十六进制、八进制
      ';
      $number = 67;
      var_dump($number);
      echo '
      '; $number = -322; var_dump($number); ?>

      php学习,第5张

      3.浮点型

      带小数部分的数字

      ';
          $number = -88.23;
          var_dump($number);
      ?>

      php学习,第6张

      4 字符串

      • 引号内的数据可以是单引号或双引号
      • 字符串不用引号会报错
      • 数字、浮点型、布尔型,用引号也属于字符串
        ';
            $str = 'My name is ou yang';
            var_dump($str);
        ?>

         php学习,第7张

        一个汉字三个长度

        ps

        这里说明一下单引号和双引号的区别

        简而言之 就是双引号可以解析变量

        在单引号的情况下,我们在第二个str变量中引入第一个str变量

        发现显示出的还是$str

        ';
            $str = '$str My name is ou yang';
            var_dump($str);
        ?>

        php学习,第8张

        但是我们如果使用双引号来包裹第二个变量

        ';
            $str = "$str My name is ou yang";
            var_dump($str);
        ?>

         就可以发现第一个变量被引入了

        php学习,第9张

        二 php复合数据类型

        php学习,第10张

        三 php特殊数据类型

        php学习,第11张

        ';
            $null ='';
            var_dump($null);
            echo  '
        '; $null = null; var_dump($null); ?>

         php学习,第12张

        php数组类型

        一 数组

        1.空数组

        php学习,第13张

        2.索引数组

        ';
            $arr = [
                'ooii',
                'ww',
                'y'
            ];
            var_dump($arr);
        ?>

        php学习,第14张

        输出键为0的值

        php学习,第15张

        3.关联数组

        自定义键

        'ooii',  //ooii这一值的键定义为qwe
                'ww',
                'y'
            );
            var_dump($arr['qwe']);   
        ?>

        php学习,第16张

        输出一整个数组

        print_r

        'ooii',
                'ww',
                'y'
            );
            print_r($arr);
        ?>

        php学习,第17张

        看下print_r与var_dump的区别

        第一行是print_r

        第二行是var_dump

        php学习,第18张

        4.连接符

        .

        可以连接多个数据

            echo 'wy is:' . $arr[qwe];

        php学习,第19张

        二.php多维数组

        1.二维数组

        ';
            var_dump($arr);
        ?>

        php学习,第20张

        2.三维数组

         '欧阳',
                    'school' => 'PHP中文网',
                    'gongfu' => [
                        'PHP',
                        '小程序',
                        'layui',
                        'Thinkphp'
                    ]
                ],
                [
                    'name' => '西内',
                    'school' => 'PHP中文网',
                    'gongfu' => [
                        'PHP',
                        'Thinkphp',
                        'Laravel',
                        '实战项目'
                    ]
                ],
                [
                    'name' => '强灭绝',
                    'school' => 'PHP中文网',
                    'gongfu' => [
                        'HTML',
                        'PHP',
                        'layui',
                        'Thinkphp'
                    ]
                ]
            ];
            print_r($arr)
        ?>

        php学习,第21张

        输出某一键值

            echo $arr[0]['name'];

        php学习,第22张

        三.php 数组循环

        1.foreach

         '欧阳',
                'ximen' => '西门',
                'miejue' => '强灭绝'
            );
            foreach ($arr as $v) {  //as 是给予 $v是循环每次value的值
                echo $v;
                echo '
        '; } ?>

        php学习,第23张

        2.key value的循环

        我们可以通过num循环来体现一下

         '欧阳',
                'ximen' => '西门',
                'miejue' => '强灭绝'
            );
            $num=1;
            foreach ($arr as $v) {  
                echo $v;
                $num=$num+1;
                echo $num;
                echo '
        '; } ?>

        php学习,第24张

        那么刚才循环的是值 我们看看能不能循环key

        这里需要=>

         '欧阳',
                'ximen' => '西门',
                'miejue' => '强灭绝'
            );
            foreach ($arr as $k =>$v) {
                echo $k.$v;
                echo '
        '; } ?>

        php学习,第25张

        3.循环多维数组

         '强欧阳',
                    'school' => 'PHP中文网'
                ],
                [
                    'name' => '西门',
                    'school' => 'PHP中文网'
                ],
                [
                    'name' => '强灭绝',
                    'school' => 'PHP中文网'
                ]
            ];
            foreach ($arr as $k => $v) {
                print_r($v);
                echo '
        '; } ?>

        php学习,第26张

         '强欧阳',
                    'school' => 'PHP中文网'
                ],
                [
                    'name' => '西门',
                    'school' => 'PHP中文网'
                ],
                [
                    'name' => '强灭绝',
                    'school' => 'PHP中文网'
                ]
            ];
            foreach ($arr as $k => $v) {
                echo $v['name'].$v['school'];
                echo '
        '; } ?>

         php学习,第27张

        这里可以看出循环先从外层数组开始

         '强欧阳',
                    'school' => 'PHP中文网'
                ],
                [
                    'name' => '西门',
                    'school' => 'PHP中文网'
                ],
                [
                    'name' => '强灭绝',
                    'school' => 'PHP中文网'
                ]
            ];
            foreach ($arr as $k => $v) {
                foreach($v as $vv){
                    echo $vv;
                    echo '
        '; } } ?>

        php学习,第28张

        php条件判断

        1、三元运算符 ? :

        若str变量有值 则返回 i am ooii

        否则error

            $str='ooii';
            echo $str ? 'i am ooii' : 'error';

        php学习,第29张

            $str='';
            echo $str ? 'i am ooii' : 'error';

         php学习,第30张

        2.if

         
        

        如果wy变量有值,则返回i am ooii

        3. if else

         
        

        wy变量为空,则返回 error

        php学习,第31张

        4. if elseif else

        wyy有值,则返回yes

         
        

        php学习,第32张

        如果wy wyy的值都为空,则返回error

         
        

        php学习,第33张

        5.switch default

        进行条件匹配

         
        

        php学习,第34张

        6.php8新特性  match

        这里php版本需要到8

         '啊啊啊',
                'bbb' => '不不不',
                'ccc' => '踩踩踩'
            };
        ?>

        php学习,第35张

        与swtich区别

        match 是表达式 要增加结束符号

        match 可以返回给变量 或者直接输出

        match 只支持单行表达式

        match 匹配进行严格比较

        php函数

        一 函数介绍

        1.函数判断

        php学习,第36张

        2.什么是函数

        • 函数是一段可以重复执行的代码片断
        • 函数是实现代码复用的重要手段。
        • 函数是现代编程语言最重要的基本单元
        • 函数永远是编程的核心工作

          3.函数分类

          根据函数的提供者(编写者),分为二类

          • 系统函数: 编程语言开发者事先写好提供给开发者直接使用的
          • 自定义函数: 用户根据自身需求,对系统功能进行扩展

            二 系统函数

            PHP 的真正力量来自它的函数:它拥有超过 1000个内建的函数

            php学习,第37张

            1.string字符串函数

            php学习,第38张

            ';
            //将字符串转化为大写
            $miejue ='miejueshitai';
            echo strtoupper($miejue);
            echo '
            '; //将字符串分割为数组 $php='欧阳克,灭绝师太,西门大官人,天'; print_r(explode(',',$php)); echo '
            '; //将字符串进行md5加密 $ximen ='西门大官人'; echo md5($ximen); ?>

            php学习,第39张

            2.array数组函数

            php学习,第40张

            ';
            // 把数组元素组合为字符串
            echo implode(',',$arr);
            echo '
            '; //数组中是否存在指定的值 echo in_array('天',$arr); echo '
            '; //删除数组中的最后一个元素 array_pop($arr); print_r($arr); ?>

             php学习,第41张

            三 php自定义函数

            1.函数的自定义语法

            //创建函数
            function fun_name(参数列表)
            {
            //函数体:由一条或多条语句组成,可以为空
            }
            • 必须使用关键字: function 声明
            • 函数名称不区分大小写,多个单词推荐使用下划线连接

              2.调用函数

              php学习,第42张

              3.函数参数

              php学习,第43张

              • 方法参数可以有默认值,有默认值可以不传值
              • 方法必须以返回的方式,不要用echo 输出的方式 

                 php学习,第44张

                4.作用域

                • php中,只有函数作用域和全局作用域
                • 所有函数作用域中的变量,外部不可见
                • 全局作用域声明变量,在函数中是可见的

                  运算符

                  一.php运算符

                  php学习,第45张

                  ';
                  var_dump(120-80);
                  echo '
                  '; var_dump( 120*80); echo '
                  '; var_dump(120/80); echo '
                  '; var_dump( 120%80); echo '
                  '; $num = 120; var_dump( $num++); echo '
                  '; var_dump( $num--); echo '
                  '; var_dump( ++$num); echo '
                  '; var_dump(--$num); echo '
                  '; var_dump(120.80); echo '
                  '; $var1 ='PHP讲师:'; $var2 ='欧阳'; var_dump( $var1 .$var2);
                  • 两个变量连接,没问题
                  • 一个变量和字符串,没问题
                  • 一个变量连接整型,必须在整型前加个空格

                    二 php赋值运算符

                    php学习,第46张

                    ';
                    $int += 30;
                    var_dump( $int);
                    echo '
                    '; $int = $int + 30; var_dump($int); echo '
                    '; $int -= 30; var_dump( $int); echo '
                    '; $int *= 30; var_dump( $int); echo '
                    '; $int /= 30; var_dump( $int); echo '
                    '; $int %= 30; var_dump( $int); echo '
                    '; $int .= 30; var_dump( $int);

                     php学习,第47张

                    三 php比较运算符

                    php学习,第48张

                    100 );
                    echo '
                    '; var_dump(100>90); echo '
                    '; var_dump( 100 >110 ); echo '
                    '; var_dump( true >false ); echo '
                    '; var_dump('php'>'php'); echo '
                    ';

                     php学习,第49张

                    1.==等于

                    ';
                    var_dump( true =='true');
                    echo '
                    ';

                    php学习,第50张

                    这是不判断类型的 只判断值

                    2.===恒等于

                    ';
                    var_dump( true ==='true');
                    echo '
                    ';

                    php学习,第51张

                    判断类型 判断值

                    四 php逻辑运算符

                    php学习,第52张

                    1. and和&&

                    两个真 返回真

                    一个假 返回假

                    ';
                    var_dump( true && true );
                    echo '
                    '; var_dump( true and false ); echo '
                    '; var_dump( false and false ); echo '
                    ';

                    php学习,第53张

                    2.or和||

                    一个真,返回真。

                    两个真,返回真。

                    两个假,返回假

                    ';
                    var_dump( true||true );
                    echo '
                    '; var_dump( true or false ); echo '
                    '; var_dump( false or false ); echo '
                    ';

                    php学习,第54张

                    3.xor

                    一个真、返回真。

                    两个真,返回假。

                    两个假,也返回假

                    ';
                    var_dump( true xor true );
                    echo '
                    '; var_dump( true xor false ); echo '
                    '; var_dump(false xor false ); echo '
                    ';

                    php学习,第55张

                    4 !取反

                    一个真、返回真。

                    两个真,返回假。

                    两个假,也返回假。

                    循环

                    1.while

                    ';
                        $int ++;
                    }

                    php学习,第56张

                    2.do while

                    ';
                        $int ++;
                    }
                    $int = 1;
                    do{
                        $int ++;
                        echo $int;
                        echo '
                    '; }while($int<10);

                    php学习,第57张

                     while与do while的区别

                    我们把条件改成int<1  显而易见条件不满足

                    但是结果有2

                    我们看下是谁执行的

                    ';
                        $int ++;
                        echo 'while执行';
                    }
                    $int = 1;
                    do{
                        $int ++;
                        echo $int;
                        echo '
                    '; echo 'do while执行'; }while($int<1);

                    php学习,第58张

                    因为while先执行

                    do while先判断

                    3.for

                    ';
                    }

                    php学习,第59张

                    4。continue

                    • 结束当前循环,进入下次循环
                    • 在循环语句中使用 while for
                      ';
                      }

                       php学习,第60张

                      5、break

                      • 结束循环
                      • 在循环语句中使用 while forswitch
                      • 可以跳出多层循环 
                        ';
                        }

                        php学习,第61张

                         类与对象

                        1、创建类

                         
                        

                        2、复合数据类型

                        php学习,第62张

                         
                        

                        php学习,第63张

                        3、对象

                        var_dump($ouyang == $miejue);
                        echo '
                        '; var_dump($miejue == $ximen); echo '
                        '; var_dump($ouyang == $ximen);

                         php学习,第64张

                        4、成员变量

                        • 成员变量,也叫: 类属性
                          name;
                            echo '
                          '; echo $ouyang->school;

                           php学习,第65张

                          5、成员方法

                          ';
                              }
                              public function fun2(){
                                return '姓名:ooii,学校:PHP中文网
                          '; } public function fun3(){ // 在类中使用伪变量: "$this" 引用当前类的成员变量 return '姓名:'.$this->name.',学校:'.$this->school.'
                          '; } public function fun4(){ // 在类中使用伪变量: "$this" 引用当前类的成员方法 return $this->fun3(); } } // 类实例化 $yangmi = new Teacher(); $yangmi->fun1(); echo $yangmi->fun2(); echo $yangmi->fun3(); echo $yangmi->fun4();

                          php学习,第66张 

                          • 类里成员有两种:属性(变量)和行为(方法)

                            4、魔术方法

                            php学习,第67张 

                            构造方法

                            name = $name;
                                  $this->school = $school;
                                }
                                public function fun1(){
                                  echo '姓名:灭绝师太,学校:PHP中文网
                            '; } public function fun2(){ return '姓名:灭绝师太,学校:PHP中文网
                            '; } public function fun3(){ // 在类中使用伪变量: "$this" 引用当前类的成员变量 return '姓名:'.$this->name.',学校:'.$this->school.'
                            '; } public function fun4(){ // 在类中使用伪变量: "$this" 引用当前类的成员方法 return $this->fun3(); } } // 实例化 $obj = new Teacher('aa','bb'); echo $obj->fun4();

                            php学习,第68张

                            析构方法

                            name = $name;
                                  $this->school = $school;
                                }
                                public function fun1(){
                                  echo '姓名:灭绝师太,学校:PHP中文网
                            '; } public function fun2(){ return '姓名:灭绝师太,学校:PHP中文网
                            '; } public function fun3(){ // 在类中使用伪变量: "$this" 引用当前类的成员变量 return '姓名:'.$this->name.',学校:'.$this->school.'
                            '; } public function fun4(){ // 在类中使用伪变量: "$this" 引用当前类的成员方法 return $this->fun3(); } // 析构方法 public function __destruct(){ echo '类执行完毕,要关闭了'; } } // 实例化 $obj = new Teacher('aa','bb'); echo $obj->fun3();

                            php学习,第69张

                            类的三大特性

                            • 继承:可以让某个类型的对象获得另一个类型的对象的属性和方法
                            • 封装:指将客观事物抽象成类,每个类对自身的数据和方法实行保护
                            • 多态:指同一个实体同时具有多种形式,它主要体现在类的继承体系

                              1.继承

                              • extends 关键词继承父类
                                name = $name;
                                      $this->school = $school;
                                    }
                                    public function fun1(){
                                      echo '姓名:灭绝师太,学校:PHP中文网
                                '; } public function fun2(){ return '姓名:灭绝师太,学校:PHP中文网
                                '; } public function fun3(){ // 在类中使用伪变量: "$this" 引用当前类的成员变量 return '姓名:'.$this->name.',学校:'.$this->school.'
                                '; } public function fun4(){ // 在类中使用伪变量: "$this" 引用当前类的成员方法 return $this->fun3(); } // 析构方法 public function __destruct(){ echo '类执行完毕,要关闭了'; } } // 子类代码复用 class PHPTeacher extends Teacher{ } // 实例化 $obj = new PHPTeacher('aa','bb'); echo $obj->fun3();

                                php学习,第70张

                                2、封装

                                • public 默认的, 关键词定义类内、类外、子类都可见
                                • protected 关键词定义类内、子类可见,类外不可见
                                • private 关键词定义类内可见, 子类、类外不可见
                                  name = $name;
                                        $this->school = $school;
                                      }
                                      protected function fun1(){
                                        echo '姓名:灭绝师太,学校:PHP中文网
                                  '; } private function fun2(){ return '姓名:灭绝师太,学校:PHP中文网
                                  '; } public function fun3(){ // 在类中使用伪变量: "$this" 引用当前类的成员变量 return '姓名:'.$this->name.',学校:'.$this->school.'
                                  '; } public function fun4(){ // 在类中使用伪变量: "$this" 引用当前类的成员方法 return $this->fun3(); } // 析构方法 public function __destruct(){ echo '类执行完毕,要关闭了'; } } // 子类代码复用 class PHPTeacher extends Teacher{ public function fun5(){ $this->fun1(); } public function fun6(){ $this->fun2(); } public function fun7(){ return $this->name; } public function fun8(){ return $this->school; } } // 实例化 $obj = new Teacher('西门大官人','PHP中文网'); echo $obj->fun1(); echo $obj->fun2(); echo $obj->name; echo $obj->school; $obj2 = new PHPTeacher('西门大官人','PHP中文网'); echo $obj2->fun1(); echo $obj2->fun2(); echo $obj2->fun5(); echo $obj2->fun6(); echo $obj2->fun7(); echo $obj2->fun8();

                                   php学习,第71张

                                  3、多态

                                  • 实现多态的前提是要先继承,在重写父类方法
                                    name = $name;
                                          $this->school = $school;
                                        }
                                        protected function fun1(){
                                          echo '姓名:灭绝师太,学校:PHP中文网
                                    '; } private function fun2(){ return '姓名:灭绝师太,学校:PHP中文网
                                    '; } public function fun3(){ // 在类中使用伪变量: "$this" 引用当前类的成员变量 return '姓名:'.$this->name.',学校:'.$this->school.'
                                    '; } public function fun4(){ // 在类中使用伪变量: "$this" 引用当前类的成员方法 return $this->fun3(); } // 析构方法 public function __destruct(){ echo '类执行完毕,要关闭了'; } } // 子类代码复用 class PHPTeacher extends Teacher{ public function fun5(){ $this->fun1(); } public function fun6(){ $this->fun2(); } public function fun4(){ return '我是重写的方法'; } } $obj2 = new PHPTeacher('西门大官人','PHP中文网'); echo $obj2->fun4();

                                     php学习,第72张

                                    命名空间

                                    1、命名空间

                                    • 解决全局成员的命名冲突问题
                                       
                                      

                                      php学习,第73张 

                                      2、创建命名空间

                                      • 命名空间使用 "namespace" 关键字声明
                                         
                                        

                                         3、常量、函数、类

                                         
                                        

                                        php学习,第74张

                                         4、子命名空间

                                        就跟windows目录一样\

                                        namespace{
                                        	const NAME = '灭绝师太';
                                        	function php(){
                                        	}
                                        	class phpcn{
                                        	}
                                        }
                                        namespace one{
                                        	const NAME = '西门大官人';
                                        	function php(){
                                        	}
                                        	class phpcn{
                                        		
                                        	}
                                        }
                                        namespace one\two{
                                        	const NAME = '西门大官人';
                                        	function php(){
                                        	}
                                        	class phpcn{
                                        		
                                        	}
                                        }
                                        namespace one\two\three{
                                        	const NAME = '西门大官人';
                                        	function php(){
                                        	}
                                        	class phpcn{
                                        		
                                        	}
                                        }

网友评论

搜索
最新文章
热门文章
热门标签
 
 女人梦见自己光脚找鞋  梦见自己游泳周公解梦  梦见自己身上划破出血