美文网首页
php中的基本语法

php中的基本语法

作者: coder_hong | 来源:发表于2016-12-24 02:34 被阅读22次

    整体了解

    <?php
    // 如果不需要界面展示 可以直接写php代码 不需要些html语句
        echo "hello";
        
        // 在php中,定义一个变量要以$符号开头
        $a = 890; // 定义了一个变量, 该变量叫$a, 然后给变量赋值890
        echo "<bt />";
        
        // 注意:变量的数据类型不是固定不变的,是根据上下文决定的
        $b = 100; // 此时$b变量是整形
        $b = "jake"; // 此时$b由整型变成字符串类型
        var_dump($b); // 可以显示变量信息 即可以看到该变量的类型
        
        // php是区分大小写的
        $H = 12;
        $h = 15;
    
        // php变量的名称只能以英文字母跟下划线"_"开头,不可以以数字开头
    ?>
    

    基本数据类型

    捕获.PNG
    • 整型
    • 小数(php是不区分双精度跟单精度小数的)
    • 布尔类型
    • 字符串

    复合类型

    • 数组(array)
    • 对象(object)

    特殊类型

    • 空 null
    • 资源类型

    算术运算

    • ++ 自加
    • -- 自减
    $a = 90;
    $a++; // 等价于 $a = $a + 1
    
    $b = 80;
    $b--; // 等价于$b = $b - 1;
    
    • 三元运算
    表达式 (expr1)? (expire2) :(expire3)
    
    $a = 90;
    $b = 80;
    
    $c = $a > $b ? 23:900;
    

    分支控制

    • 单分支
    if(条件表达式){
    
    }
    
    • 双分支
    $age = 30;
    if($age > 30){
    
    }else if($age==30){
    
    }else{
    
    }
    
    
    • 多分支

    循环控制

    • for循环
    for($i = 0; $i<5; $i++){
      echo "你好";
    }
    
    
    • while
    $i  = 0;
    while($i<10){
        echo "<br /> 你好!!";
        $i++;
    }
    
    
    • do while
    $age = 0;
    do{
        echo age;
        $age++;
       }while($age < 10)
    

    函数

    • 封装一个计算函数方法
    
    
    <?php
        $num1 = 10;
        $num2 = 12;
    
        // function关键字  jiSuan函数名
        // $num1, $num2, $oper 形参 及参数列表 注意参数不需要类型
        function jiSuan($num1, $num2, $oper){
            
            $res = 0;
            switch($oper){
                case "+":
                $res = $num1 + $num2;
                break;
                
                case "-";
                $res = $num1- $num2;
                break;
                
                case "*":
                $res = $num1 * $num2;
                break;
                
                default:
                echo "输入运算符有误";
                
            }
            
            return $res;
        }
        
        
    ?>
    
    • 如果在别的文件直接调用该函数需要利用关键字require进行导入
    
    <?php
    // 引入需要的php文件
        require 'funcs.php';
        
        $res = jiSuan(12, 15, "+");
    ?>
    

    总结函数的格式
    function 函数名(参数1,参数2,......){ // 参数列表是不需要数据类型的
    // 函数体
    return 语句;
    }

    php页面相互调用的知识点

    a.php页面想使用 b.php定义的函数,我们可以使用如下指令

    • require require_once

    • include include_once

      • reqire的用法
    <?php
      require (要引入的文件名);
      require "要引入的文件名";
    
    require_once ("引入的文件") 先判断,在引入,如果发现文件已经引入,则不再引入
    如果是用require引用重复同一个php 文件,或报错 重复定义
    require相当于作用相当于完整的拷贝
    ?>
    
    include 和require区别(同时也是include_once 跟require_once的却别)
    使用include如果出现错误,程序还是会继续执行,只是警告而已,而require程序会退出,不会再执行
    常见的错误:例如,包含的文件名写错了 或者文件不存在
    

    数组

    $hens[0] = 3;
    $hens[1] = 5;
    $hens[2] = 1;
    $hens[3] = 3.6;
    $hens[4] = 2;
    $hens[5] = 50;
    
    //  遍历整个数组
    
    for($i = 0; $i<count($hens); $i++){
      echo $hens[$i];
    }
    

    数组的基本介绍

    php中的数组是一组关键字(下标、索引)和值的集合,值可以使任意一种类型

    数组的创建方式

    方式1

    <?php
      $array[0] = "jake";
      $array[1] = 12;
      $array[2] = 12.5;
    ?>
    

    方式2

    $数组名 = array(值1,值2, 值3,......);
    $person = array("23", "jake", "1998-11-05");
    

    方式3
    自己指定下标

    $array["logo"] = "北京";
    $array["hsp"] = 123;
    或者
    $array = array("logo"=>"北京", “hsp”=>123); 
    
    

    PHP面向对象

    <?php
    
    // 定义一个类
        class Cat{
            // 成员属性
            public $name,
            public $age,
            public $color
            
        }
        
        // 创建猫对象
        $cat = new Cat();
        $cat->name = "小白";
        $cat->age = 2;
        $cat->color = "黑"; 
    ?>
    

    公司的实际开发

    类名.class.php
    
    class 类名{
    
    }
    
    例如定义以猫类给别人用,规范的定义一个类
    1.创建一个Cat.class.php
    2.定义类
    class Cat{
      // 属性
    }
    

    如果给函数传递的参数是一个对象,传递的是地制值
    在php中如果数组作为参数默认是值传递(相当于拷贝一份),如果想要地址值传递,需要&$数组名
    基本数据类型作为参数传递,是值传递,如果想传递的是地址值,则需在变量前加上&符号

    function test(&$test1){
    
    }
    
    成员方法
    <?php
    
    // 定义一个类
        class Person{
            
            public $age,
            
            // 成员方法
            public function speak(){
                
                
            }
        }
        
        // 创建对象
        $p = new Person();
        // 执行成员对象方法
        $p->speak();
        
        
    ?>
    
    构造方法
    
    Class Person{
    
      public $name;
      public $age;
    
    public function_construct{
    // 当通过new方式初始化一个对象的时候,系统会调用该构造方法
    // 注意:构造方法是没有返回值的,它是系统自动调用的
      echo "我是构造方法";
    }
    
    // 自定义构造方法 php4中的构造方法,名字和类型一致,如果在php5中两个都有,它会优先选择 `function_construct `
    public function Person(){
        echo "ok";
    }
    
    }
    
    // 自定义构造方法
    public function_construct($iname, $iage){
        $name = $iname; // 这里是错误的写法  它会认为#name是一个新的变量 跟成员属性无关
        $iage = $iage;
      // 这就需要通过this这个关键字了
      this:系统会给每一个对象分配this代表当前对象
      // 正确的写法:
    $this->name = $iname;
    $this->age = $iage;
       echo "自定义构造方法"; 
    }
    
    
    析构方法

    主要用于释放资源(比如:释放数据库连接,图片资源,销毁某个对象)

    class Person{
      public $name;
      public $age;
    
      // 构造方法
      public function__construct($name, $age){
        $this->name = $name;
       $this->age = $age;
    }
    
    // 写一个析构方法 __是两个下划线
    function __destruct(){
      echo ""销毁资源<br/>;
    }
    
    $p1 = new Person("贾宝玉", 16);
    $p2 = new Person("林黛玉", 14);
    
    运行代码我们得出结论:
      1.析构方法会自动调用
      2.析构方法主要用于销毁资源
      3.析构方法调用的顺序是,先创建的对象,后销毁
      4.析构方法什么时候被调用
    (1)当程序(进程结束)退出时
    (2)当一个对象称之为垃圾对象的时候
    垃圾对象:在PHP当一个对象没有任何引用指向它的时候,就会成为一个垃圾对象,php将启用垃圾回收器将对象销毁,从而回收该对象占用的内存
    }
    
    
    static

    相关文章

      网友评论

          本文标题:php中的基本语法

          本文链接:https://www.haomeiwen.com/subject/xadlvttx.html