zoukankan      html  css  js  c++  java
  • PHP复习

    一.php基础语法
    1.输出语句:echo print print_r var_dump()

    2.php是弱类型语言
    强制转换类型: (类型)变量 settype(变量,类型)

    3.变量定义
    $a = 5;
    可变变量:$b="a"; $$b =10;
    判断变量类型 gettype(变量);获取变量类型 is_类型() is_int();判断变量是否是该类型
    判断变量是否为空:empty() isset();
    删除变量:unset();

    4.字符串的定义方式
    $str = "hello"; 可以解析变量 解析转义字符
    $str = 'hello'; 不能解析
    $str = <<<A
    hello
    A; 不用担心单引号和双引号的问题

    5.运算符与表达式

    6.语句
    分支:if switch...case
    循环:for foreach while do...while

    7.函数
    四要素:返回类型,函数名,参数列表,函数体
    函数的定义方式:
    function Show() 普通的
    {
    }
    function Show($a) 有参数的
    {
    }
    function Show() 有返回的
    {
    return $a;
    }
    function Show($a=5) 有默认值的
    {
    }
    function Show() 参数可变的
    {
    func_get_args();
    }

    8.常用的函数
    随机数的:rand(); rand(0,10);
    日期时间:time(); 可以获取当前日期时间戳
    date(格式化字符串,时间戳); 格式化日期时间的 Y年份 m月份 d天 H24小制的小时 h12小时制的小时 i分钟 s秒
    strtotime(表示时间字符串); 将字符串转化为时间戳

    9.其它
    错误抑制符 @
    退出程序:exit(); exit; die("错误信息");

    二:字符串的常用方法
    1.取字符串长度:strlen();
    2.拆分字符串:explode();
    3.合并字符串:implode();
    4.截取字符串:substr();
    5.替换字符串:str_replace(); 查找替换 substr_replace(); 指定位置替换
    6.去空格:trim();
    7.转大写:strtoupper();
    8.转小写:strtolower();
    9.根据长度拆分:str_split();

    三:正则表达式
    1.定界符:/ /
    2.匹配开头:^ 匹配结束 $
    3.d 数字 s 不可见字符 w任意数字或单词字符 +前面的表达式至少出现一次
    {0,2}前面的表达式至少出现0次最多出现2次 [0,1,2]匹配里面的任意字符 [0-9] 匹配0-9之间的数字 [a-z]匹配a-z之间的单词字符 ()优先级 |或

    4.拆分字符串:preg_split();
    5.替换字符串:preg_replace();
    6.匹配字符串中出现的(满足正则)数据:preg_match() preg_match_all()

    四:数组
    1.数组分类:
    根据维度分:一维数组,多数组。
    根据索引分:索引数组,关联数组。

    2.数组定义:
    $attr = array(); 常见定义方式
    $attr[] = 5; 赋值定义

    定义索引数组:$attr = array(1,2,3,4);
    定义关联数组:$attr = array("key"=>"value");

    3.索引数组取值:$attr[0];
    关联数组取值:$attr["key"];

    4.遍历数组:
    for循环,只能遍历索引数组
    for($i=0;$i<count($attr);$i++)
    {
    $attr[$i];
    }
    foreach遍历,可以遍历索引和关联数组
    foreach($attr as $v)
    {
    $v;
    }
    foreach($attr as $k=>$v)
    {
    $v;
    }

    each()和list()方法结合
    each():返回数组里面当前元素的key和value值,返回的是一个数组的形式
    list():将右侧数组的值分别赋给一组变量 list($a,$b) = $attr;

    指针遍历
    取当前指针指向的元素的值:current();
    取当前指针指向的元素的key:key();
    将指针指向下一个元素:next();
    将指针指向上一个元素:prev();
    重置指针:reset();
    将指针指向最后一个元素:end();

    5.数组的常用函数
    取数组长度:count();
    向数组添加元素:array_push();
    判断数组里面是否包含某个元素:in_array();
    合并数组:array_merge();
    去重复:array_unique();
    删除数组元素:unset();
    重新索引:array_values();
    翻转数组:array_reverse();
    数组元素排序:array_multisort();


    五:面向对象 OOP

    1.类和对象 类是由众多对象抽象出来的 对象是类实例化出来的

    2.类的定义 class Ren { }
    成员变量 成员方法 构造函数 析构函数 __get() __set() __tostring()
    __clone()

    3.访问修饰符: public 共有的 private 私有的 protected 受保护的

    4.三大特性
    封装:目的 做法
    继承:概念 特点 函数重写
    多态:概念 条件

    5.静态 static 静态成员是属于类的,普通成员是属于对象的 Ren::Show();

    6.抽象类:abstract 不能被实例化 用作父类
    接口:interface

    7.克隆对象 clone

    8.构造函数 __construct()
    写法特殊 执行时间特殊

    9.加载类
    include("");
    include "";
    require("");
    require "";
    require_once("");
    require_once "";
    自动加载类 __autoload()

    10.单列模式

    11.工厂模式

    六:数据访问

    1.myqli
    $db = new mysqli(服务器,用户名,密码,数据库);
    mysqli_connect_error();
    $result = $db->query(SQL语句);
    $result->fetch_row();
    2.pdo
    $pdo = new PDO(DNS,用户名,密码);
    $stm = $pdo->prepare(SQL语句);
    $stm->excute();
    $stm->fetch_row();

    ?占位 :字符串

    七:Jquery Ajax

    1.选择器 $()
    根据id选 $("#id") 返回一个jquery对象 从jquery对象里面取DOM对象 取索引0[0]
    根据class选 $(".class")
    根据属性选 $("[name=a]")
    根据标签名选 $("div")

    2.操作内容
    操作非表单元素
    文本 text();
    html代码 html();
    操作表单元素:
    val();

    3.操作属性
    添加设置属性 attr(属性名,属性值);
    获取属性 attr(属性名);
    移除属性 removeAttr(属性名);

    4.操作样式
    获取样式 css(样式名);
    添加设置样式 css(样式名,样式值);

    5.事件
    $("#id").事件名(function(){})
    $("#id").bind(事件名,function(){}); 绑定事件
    $("#id").unbind(事件名); 移除事件

    6.Ajax
    async:异步
    url:调用的处理页面
    data:传递的数据JSON格式
    type:数据传递的方式 POST或GET
    dataType:返回数据类型 TEXT JSON XML
    success:回调函数
    error:当调用出错执行的方法

    7.JSON
    {key:value}
    XML
    必须有一个根
    有开始就要有结束
    大小写敏感
    标签名可以自定义
    可以加属性

    八.会话控制
    SESSION
    存储在服务器 有默认过期时间 每个用户存一份 可以存储任何类型数据
    必须开启才能使用 session_start(); 必须写在第一行
    $_SESSION["uid"] = "lisi";
    安全,占资源
    COOKIE
    存储在客户端 默认是没有过期时间 每个用户存一份 只能存储字符串
    setcookie(名,值); 设置cookie
    $_COOKIE["uid"]; 读取cookie
    不安全,不占资源

    九:文件

    1.文件上传
    做文件上传表单 enctype
    $_FILES数组取文件信息
    控制上传格式和大小
    造存储路径(处理文件名) 改文件名 建文件夹
    判断文件是否存在
    上传保存 move_uploaded_file();
    转编码格式 iconv(原编码,目标编码,字符串);

    2.文件操作
    文件类型: filetype() is_file() is_dir()
    路径: ./ ../ /
    遍历目录: glob(); 目录资源
    新建目录:mkdir();
    删除目录:rmdir();
    移动目录:rename();

    新建文件:touch();
    删除文件:unlink();
    复制文件:copy();

    获取文件内容:file_get_contents();
    写入内容:file_put_contents();

    文件资源
    打开文件资源:fopen();
    关闭文件资源:fclose();
    读取文件内容:fgetc() fgets() fread() fwrite()

  • 相关阅读:
    Linux添加PATH,即命令自动补全功能
    编程的奥义
    Windows SDK笔记
    一个烂电源,毁了我一天的工作
    贪念
    VC菜菜鸟创建一个即时串口通信程序
    IP视频监控系统开放式平台的5个标志
    敷铜的入门
    解决:Ulead VideoStudio 启动黑屏的问题
    数据结构中,关于“大小端”的数据存储方式的相关问题
  • 原文地址:https://www.cnblogs.com/hamilton/p/5641723.html
Copyright © 2011-2022 走看看