PHP学习笔记

第一课: php简介

    架构服务器 lamp (linux Apache mysql php)    lnmp(linux nginx mysql php)

    搭建php运行环境

    php开发工具:

    文本编辑器
     sublime3  
    IDE
     netbeans  eclipse  phpstorm

第二课: 搭建PHP的运行环境

    基本运行环境:
    1. Apache服务器/nginx
    2. PHP脚本
    3. MySQL 数据库

    php集成包:
    PhpStudy  xammp  wamp 

第三课: PHP变量与数据类型

    变量: php中基本的数据存储单元,可以存储不同的数据类型。
    变量的声明: 变量的名称由一个美元符“$”开头,“$”后是一个标识符。
    标识符: 由字母,数字或者下划线组成。

    四种标准类型:
    boolean(布尔型)   
    $a = TRUE; $a = FALSE;
    integer(整型)
    $a = 1; $a = -12;
    float(浮点型)
    $a = 1.001;
    string(字符串)
    $a ="这是一个字符串";

    两种复合类型:
    array(数组)
    $arr = array(1,2,3,4); $arr = array("A"=>1, "B">=2);

    object(对象)


    整数与浮点数之间的转换:
    $a = 100.0;
    echo (int)$a;
    $b = 123;
    echo float($b);


    字符串与整数之间的转换:
    $c = "123abc";
    echo (int)$C;

    $d = 123;
    echo (string)$d;

第五课: php中的运算符

第八课: php中的数组操作

    创建数组:
       php中的数组是一个关键字或值的集合
       (值可以是任何一种类型,包括另一种数组)
       
       php中使用array来创建一个数组
       array(key=>value, key=>value...)
       
       例子:
        $arr = array(3,5,6,7,8);
        $arr = array("id" => 2, "title"=>3);


    修改数组:
        用方括号的语法来修改数组
        $arr[]=value
        $arr = array("a"=>"北京", "b"=>"天津", "c"=>"上海");
        
        $arr['a'] = "石家庄";
        $arr['c'] = "大连";


    数组的函数
        使用count函数统计数组条数    count($arr);
        使用is_array函数判断数组    is_array($arr);
        另一种创建数组的函数explode  explode("key", value);


    使用foreach遍历数组
        遍历数组很多种方法,可以使用For循环 while循环,最巧妙的
    一种遍历数组foreach给我们带来了更多方便
        foreach($arr as $key => $value){
            ......
        }    

    
第九课: php中的字符串的操作

    常见的字符串操作
    1. 去掉字符串两边的空格: trim()
    2. 字符串的合并: .
    3. 字符串的比较: ==
    4. 字符串的替换: str_replace()
    5. 字符串的截取: substr()
    6. 加密函数: md5()
    7. 字符串与数组之间的转换: explode()

第十课: GD库画图操作


第十一课: PHP自定义函数和PHP系统内部函数

    PHP如何自定义函数:
    使用Function来自定义一个函数:
    Function func_name($val){
     ....
    }
    函数的命名和自定义变量一样
    
    一个自定义函数中的变量是局部的,函数外不生效,用global全局变量
    的时候,在函数外才可使用变量(不建议)


    
    function_exists(fun1) //判断函数fun1是否存在
    
    

第十二课: PHP操作cookie

    Cookie:
     cookie是web服务器暂时存储在用户硬盘上的一个文本文件,并且随后被web
     浏览器读取。
     
     http协议是一个无状态的协议,服务器单从网络连接上无从知道客户身份,
     所以服务器就给客户端颁发一个通行证,这个通行证就在客户端,服务器
     通过这个通行证能够确认客户的身份。
     
     cookie的功能:
        1. 记录访客的某些信息
        2. 在页面之间传递信息
        
    操作Cookie

     创建Cookie: setcookie()
     读取Cookie: $_COOKIE[]
     删除Cookie: unset()
        
    eg:

    <?php
     $value = "beijing";
     setcookoe("name", $value);
     
     $name = $_COOKIE['name'];
     var_dump($name);

     unset($_COOKIE['name']);
     var_dump($_COOKIE['name']); 
    ?>

    Cookie的生命周期
    Cookie不设定时间: 只要关闭浏览器Cookie就会消失
    Cookoe设定时间: 浏览器会把Cookie保存到硬盘,直到他的有效
    时间超过

 
第十三课: PHP操作session


    Session:
      一个终端用户与交互系统进行通信的时间间隔
      
    Session的功能:
      Session回话适用于存储用户的信息量比较少的情况。
    如果用户需要存储的信息量相对较少,并且存储内容不需要长期存储,
    那么使用Session把信息存储到服务器比较合适。  


    Session操作:
      1. 创建会话:
       session_start()
      2. 注册会话:
       $_SESSION['name']
      3.使用会话:
       $name = $_SESSION['name']
      4. 删除会话:
       unset($_SESSION['name'])


第十四课: PHP操作MySQL数据库


    创建数据库
     Create database [if not exists] 数据库名 [数据库选项]
     数据库名; 可以是任意字符(目录可以创建成功),但特殊的
     字符需要使用反引号包裹。标识符的大小写区别于操作系统的大小
     写特征。
     
     if not exists 表示在数据库不存在时创建。
     数据库选项中,可以设定数据库字符集(character set utf8)
     和校对集(collate utf8_general_ci)。
     
     
     
    查询数据库
    1. 查询已经存在的数据库:
      Show databases
     
    2. 查询创建数据库的语句:
      Show create database db_name


    删除数据库

    1. Drop database [if exists] db_name;

    2. if exists 表示数据库存在才删除。

    3. 当删除一个数据库时,同时删除该数据库相关的目录及其目录内容。

    创建表的操作

    Create table [if not exists] tbl_name (列定义) [表选项]

    Create table [if not exists] tbl_name like old_tbl_name;

    Create table [if not exists] tbl_name select语句;


    每当创建一个表,会在数据目录场景对应的文件保存表信息。

    列定义:
     1. 列名 类型 [是否为空] [Default 默认值] [是否为自动增长]
     [是否为主索引或唯一索引][comment 注释] [引用定义]
     
     2. 类型指的是 当前列所保存数据的类型。(简单的int整形,varchar字符串类型,需要指定最大长度)

     3. 每个列定义使用逗号分隔。

     
     
     删除表:
      Drop table [if exists] tbl_name;
      注意,可以同时删除多个表名,表名之间使用逗号分隔。


第十五课: 搭建博客系统

第十六课: PHP面向对象编程

    1. 使用class 创建一个类:
      class 类名{
       ......
      }

    2. 类的成员属性和成员方法:
     
       class MyPo{
        public $name;//成员属性
        public $price;
        
        function func(){ //成员方法
            return "PHP系列教程视频";
        }
       
       }

    3. 使用new函数对象实例化
        new  对象名(参数)

       //实例化一个类
        $test = new MyPo();
        $a = $test->func(); //调用类的方法
        $b = $test->$name;  //调用类的属性
        
        
    4. 对象中的$this 关键字
        $this 关键字是用来访问当前对象中的对象属性和对象方法的系统变量。
        class MyPo{
            public $name;
            public $price;
            
            function fun1(){
                $this->name;        
            }
            
            .....
            $this->fun1();
            .....
        }
        ($this仅能在当前对象中使用)
        
        
    5 初始化对象 __construct()
        我们在创建一个类有时候需要初始化一些操作,这个时候我们需要使用初始化函数:
        
        class MyPo{
            function __construct(){
             //初始化操作
             }
        }
        
        
        class Test{
            public $name;
            function __construct($name){
                $this->name = $name;
            }
            
            function testes(){
                return $this->name;
            }
        
            function tests(){
                return "beijing";
            }
        }
        
        $a = new Test("beijing");
        var_dump($a->name);
        
        
        
    6. 封装关键字
        public 表示全局,类内部外部 子类都可以访问;
        protected 表示受保护的,只有本类内部可以使用;
        private表示私有的,只有本类内部可以使用;
        
        
    7. 继承关键字
        extends

     
    8. 抽象关键字 abstract
        在PHP中声明一个抽象类或者方法我们需要使用abstract关键字
        一个类中至少有一个方法是抽象的,我们称之为抽象类。
        所以如果定义抽象类首先定义抽象方法。
        abstract class class1{
        
            abstract function fun1(); //抽象方法不允许有{} 抽象方法前必须加abstract
        }
        
        抽象类的几个特点:
         1>. 不能被实例化,只能被继承。
         2>. 继承的派生类当中要把所有抽象方法重载才能实例化。
        

    9. 常用的关键字:
       1>. final
        当定义类的时候该类将不能被继承,当用来定义方法的时候该方法将不能被重载。
        
       2>. self  
        用来用类访问当前类中的内容的关键字,类似与$this 关键字,但$this是需要类
        实例化以后才可以使用,self可以直接访问当前类中的内部成员
        self::类内部成员(属性或者方法)
        
        类名::类内部成员(属性或者方法)
       
       3>. static  
        用来定义类的静态属性或方法,可以在类未被实例化时使用,静态属性单独占用内存而不会
        因创建多个对象时而导致同样的方法或者属性重复占用。
       
       4>. const 
        用来定义类中的常量,类似PHP外部定义常量的关键字define(); Const只能修饰类当中
        的成员属性。
        
        
        class cl1{
            const NAME;    //注意: 建议大写常量, 常量不使用$符号
            function fun1(){
            ....
            }
        }
        
        
    10. 类中的接口的应用

        1>.关键字 interface
        
        
        2>.关键字 implements

            
    11>. PDO(PHP Data Object):
        PDO是PHP的内置的一个扩展类,它对数据库进行访问,不同的数据库使用不同的方法名,
        解决数据库链接不统一的问题。
        
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值