php小笔记 变量定义/字符串/数组/函数/php导入/对象

创建项目的项目名不能为中文

html中使用php的方式:
         1. <?php ?>
         2. 简写 <?   ?>
         3. <script language="php"></script>

注释方法:

         //  单行注释
         #  单行注释
        /*
         * 多行注释
         * */

        php的另类注释法

        if (1==0){
            echo '输出语句<h1>我是亚索</h1>';
            echo '输出语句<h1>我是亚索</h1>';
         }

        php 语句必须以分号结束
        echo '输出语句<h1>我是亚索</h1>';

常量:   类C语言 不能修改
       const PP = 10;
       echo PP;

宏定义:     常量名称 一般全部大写  

       define('PI','3.1415926');  

       默认是false     true不区分大小写
       define('II','3.1415926',true); 

变量定义:

       $开头   后面才是具体变量名  

       $a = 89;

       var_dump 返回变量的 数据类型和值(十进制)

       var_dump ($a);        返回值是  int(89)

       $ab = true;
       var_dump($ab);       返回值是  bool(true)

       $s = 'yasuo';

       var_dump($s);          返回值是  string(5) "yasuo"

     连接  字符串1.字符串2  用点号连接
         echo $s.$ss;

       一般除数不设置为0   会报警告  @可以避免出现警告

       $num = @(2/0);

switch(整型 字符)
switch (intval($grade/10)){
    case 7:
        echo '良好'.'<br>';
        break;
    case 6:
        echo '中等'.'<br>';
        break;
    default:
        break;
}

字符串:

$name = '呵呵';

双引号 " "能将内部的变量解析成值

单引号 '  ' 当做字符串

echo "姓名: $name".'<br>';         输出效果:   姓名: 呵呵

echo '姓名: $name'.'<br>';           输出效果:  姓名: $name

截取(子字符串)   substr(字符串,开始的下标,长度)   如果没有长度参数   默认到最后

把字符串截成数组   str_split(字符串,长度);

数组:

1. 创建数组:

   方法一 :  $arr =  array();

                  $arr[0] = ' 萌 ';

                  $arr[1] = ' 哈 ';

   方法二 :  $arr1  =  array(' 哎呦 ' , ' 我去 ');

2. 输出方法 : print_r($arr1);     打印复杂数据类型  函数

                      print( ); 有返回值,只能打印基本数据类型

                     echo( );  只能打印基本数据类型

                     printf( '123占位符' , 变量 );

                      //  %d 整型    %f 浮点     %c 字符     %s 字符

                       例如:  $a = 10;

                                  printf( '123%d' , $a );

3. range ( 起始元素 , 结束元素 , 间隔 ) 有返回值

        eg: $arr2 = range( 1 , 10 , 3 );    

               echo "<pre>";      // 原样输出

               print_r($arr2);

               echo "</pre>";

4. 添加   array_push( 需要添加元素的数组 , 元素1 , 元素2 )

5. 删除   array_splice( 数组 ,下标 , 长度 )        

6. 数组长度   count( 数组 ) ;

7. 键值对  创建数组

              创建方法一 :

                     $arr3 = array();

                      $arr3[ ' w ' ] = ' wang ';

                     $arr3[ ' y ' ] = ' ye ';

              创建方法二 :   key(0)=>value    <key值相同会覆盖>

                     $arr4 = array( ' x ' => ' xiang ',' x ' => ' xin ', ' h ' => ' wanhe ');

               输出方法 :

                      print_r($arr3);   (方法一)

                     foreach($arr4 as $key=>$value){   (方法二)

                          echo $key." : ".$value.'<br>';

                     }

8. 二维数组

            键值对 创建

            $arr5 = array('数字'=>array(1,2,3),'字母'=>array('a','b','c'));

            默认 创建方法

            $arr6 = array(array(1,2,3),array('a','b','c'));

           遍历二维数组 示例

            for($i= 0;$i< count($arr6);$i++){

                 for($k= 0;$k< count($arr6[$i]);$k++){

                       echo$arr6[$i][$k].'------';

                 }

                 echo '<br>';

            }

函数:   实现特定功能的代码段 (可重复调用)

         1. 关键字  函数名(){函数体,功能代码}

         function play(){

               echo 'go shopping';

         }

        调用函数
             play();

         2. 形参 sum($a=10,$b=20)
            设置默认值 调用者没有传实参 用默认值计算
            function sum($a=10,$b=20){
                    echo '和: '.($a+$b).'<br>';
            }

            sum();

          3. 一般都要有返回值  return        0 正常   -1 不正常

          4. 值传递 (不改变外部变量值)      例如: $a = 18;$b = 22;
              function change($a,$b){
                   $temp = $a;
                   $a = $b;
                   $b = $temp;
                   echo "a= $a "."b= $b".'<br>';
               }
               change($a,$b);
               echo "a= $a "."b= $b".'<br>';

           5. 引用  (改变外部变量值)           例如: $a = 18;$b = 22;
               function change1(&$a,&$b){
                    $temp = $a;
                    $a = $b;
                    $b = $temp;
                    echo "a= $a "."b= $b".'<br>';
               }

               change($a,$b);
               echo "a= $a "."b= $b".'<br>';

          6. 全局变量
              $age = 18;
              function add(){
                    //局部变量  作用域当前大括号
                    $name = '张三';
                    //不能直接使用全局变量
                    //使用:先声明 再使用

                    global $age;
                    echo $age.'<br>';
               }
              add();

                     //静态变量    static 变量  1.只能初始化一次  2.生命周期 -> 当前程序结束
                      static $height = 173;

导入php文件:    include / require / require_once

           include / require  就相当于把sum.php里的代码全部复制过来,但是不能重复且同时导入
               include 'sum.php';
               require 'sum.php';

               可以重复导入 require_once 判断是否导入这个文件
               require 'sum.php';
               require_once 'sum.php';

               路径错误 报错 代码结束,不会执行下面的代码
               require 'sum1.php';

               路径错误 报警告 代码继续执行
               include 'sum1.php';

对象:

              类就是对 对象的抽象
              对象是是一个类的具体实现

              类:自己构造一个数据类型(属性<变量> 行为<函数/方法>)

              的定义(语法结构)
              class 类名(规范首字符大写){}

              class Person{
                      //权限修饰符 public  protected  private
                      //属性
                       //私有的 本类内部
                       private $name;
                       //受保护的 本类和子类的内部
                       protected  $age;
                       //公开的 任何地方都能访问
                       public $sex;
                       //一般属性值设置为私有的
                       private $name,$age,$sex;

                       //属性可以设置初始值,但是一般不设置,如果非要设置一般为简单量 禁止19*10+10类似的复杂式
                       //public $age = 19*10+10;     //禁止这种形式

                       // 一般函数都是公开的  使用默认的
                       // 默认public

                        function smoke(){
                               echo 'chou';
                        }
                  }
                 //创建对象 new 类名
                 $p1 = new Person;
                 // -> 访问对象的属性或函数
                 $p1 -> sex = true;
                 $p1 -> smoke();

面向对象的三大属性: 封装  继承  多态

封装:

class Dog{
    //私有的(类的内部) 封装
    private $name;
    //公有的
    function eat(){
        echo $this->name.'吃骨头'.'<br>';
    }
    //属性赋值
    function setName($name){
        $this -> name = $name;
    }
    //取值
    function getName(){
        return $this -> name;
    }
}

$d1 = new Dog;
$d1 -> setName('旺旺');

echo $d1 -> getName().'<br>';
$d1 -> eat();      //调用

单继承

//父类
class Person{
    private $name,$age;
    function __construct($name,$age){     //构造函数  两个连续的下划线 __construct 创建
        $this->name = $name;
        $this->age = $age;
    }
    function setName($name){
        $this->name = $name;
    }
    function getName(){
        return $this->name;
    }
    function eat(){
        echo '你妈叫你吃饭了'.'<br>';
    }
}
class Student extends Person {        //子类继承父类
    private $study;
    function __construct($name,$age,$study)
    {
        parent::__construct($name,$age);
        $this->study = $study;
    }
}
$s= new Student('小灰灰',10,111);
echo $s->getName();
$s->eat();

接口:

          php不支持多继承,但开发中需要多继承  ( C++支持多继承 )
          interface 接口(协议) ( 只能放未实现的方法 )

          inetrface Student{

                  //接口中不能有属性或中间变量

                  function play();

         }

        interface Boyfriend{

                 function shopping();

         }

         //class 类 implements 接口1,接口2  (变相的实现多继承)

         class student1 implements Student ,Boyfriend{

                 function play(){ ... }

                 function shopping(){ ... }

         }

抽象类:

         抽象类  修饰符abstract
         抽象类不能创建实例
         抽象类中可以使用abstract修饰方法   普通类不能使用abstract修饰方法
         抽象类中可以有实现的方法

         abstract class Cat{

                  private $name;

                  function eat(){

                        echo  '吃饱了';

                  }

                  abstract function drink();   //抽象内函数

         }

          class Tigger extends Cat{

                  function drink(){

                          echo  '喝水!';

                   }

         }

         $tig = new Tigger();

         $tig->eat;

文件:

       $path=" .... ";    //获取文件路径

       dirname($path);   //返回文件位置

       basename($path);   //返回文件名

       pathinfo($path);    //以数组的形式返回文件的位置等相关信息

       读取文件
       fopen() 打开一个文件 如果不存在就创建一个

       //w w+ r r+  a(append追加) a+
       //w+  write+ 清空文件的内容再写

       $file = fopen('2.txt','w+');    //打来文件

       if($file){

              fwrite($file,'hello');   //写入

               fclose($file);           //关闭

       }

 

            

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值