zoukankan      html  css  js  c++  java
  • PHP笔记

    语法

    1. 代码块

    php关键字不区分大小写

    /*
    四种定界符
    */
    
    // 标准
    <?php
        // 代码块
    ?>
    
    // script标记
    <script language="php">
    // 代码块
    </script>
    
    /*
    短标记
    默认不支持该风格, 需要在php配置文件(php.ini)中开启
    short_open_tag = On
    */
    <?
        // 代码块
    ?>
    
    /*
     asp风格
    默认不支持该风格, 需要在php配置文件(php.ini)中开启
    asp_tags = On
    */
    <%
      // 代码块
    %>

    2.注释

    <?php
    // 单行注释
    # 单行注释
    /*
    多行注释
    */
    ?>

    3. 输出方法

      输出数据 参数个数 返回值
    echo 只能输出数字、字符串. 对于布尔型,TRUE输出成1, FALSE输出空 多个
    print() 只能输出数字、字符串. 对于布尔型,TRUE输出成1, FALSE输出空 一个 成功返回1,失败返回0
    print_r() 输出数组,包括键值, 不包括数据类型 一个 成功返回1,失败返回0
    var_dump() 输出变量及变量的数据类型 多个

    4.特殊语法

    <?php
    
    // 条件判断,也可以使用大括号
    if(1): 
      // php语句
    else:
      // php语句
    endif;  // 结束选择分支
    
    ?>

    5.变量类型强转

    <?php
    // 将变量b强转为整形
    $a = (int)$b;
    /*
    支持的强转类型有:
    int, bool, float, string, array, object, unset, binary(二进制)
    */
    ?>

    变量

    1. 定义

    <?php
    //创建变量, $符号标识后面跟的是变量名
    $x = 5;
    $y = 6;
    // 使用变量
    echo $x;
    
    // 取变量的地址, 将x变量的地址赋给address
    $address = &$x;
    // address与x变量指向同一变量
    echo $address;
    
    // 销毁变量, 仅销毁变量名
    unset($x);
    
    // 可变变量
    $a = '12345';
    $b = 'a'; # 存放变量名
    echo $$b; # 相当于$a
    
    // 定义常量, 常量名不使用$开头, 布尔值标识是否忽略大小写, 默认为false
    define('name', 'hujing', true);
    echo NAME;
    // 判断常量是否已经定义
    defined('name');
    ?>
    <?php
    # 变量的数据类型
    
    /*
    基本类型: 
    整形, 浮点数, 布尔型, 字符串
    */
    // 字符串中, 双引号字符串会将变量名替换, 单引号字符串不会(真正的字符串)
    $name = '123';
    echo '你好, $name'; # 你好, $name
    echo "你好, $name"; # 你好, 123
    echo "$name你好"; # 报错, 认为'name你好'是变量名
    echo "{$name}你好"; # 如此甚好
    echo "${name}你好"; # 同上
    
    /*
    复合类型
    数组, 对象
    */
    
    /*
    特殊类型
    NULL
    资源类型: 所访问的php外部数据
    */
    
    ?>

    注意:  在php中'+'只做数字加法, 无法拼接字符串, 拼接字符串使用'.'

    2.数组

    <?php
    // 创建一维数组
    $arr = array("1", "2");
    // 可以任意更改数组下标, 不写的即+1, 下面数组下标为 1,2,5
    $arr = array(1=>"1", "2", 5=>"3");
    // 数组长度
    count($arr);
    
    // 创建关联数组(貌似就是字典)
    $arr = array("a"=>"1", "b"=>"2");
    $arr['c'] = '3';
    // 遍历关联数组
    foreach($arr as $key=>$value){
        echo $key.$value;
    }
    
    // 创建多维数组
    $arr = array(
    array("a", 2, 3),
    array("b", 5, 6) 
    )
    
    
    ?>

    3. 超全局变量

    就是任意地方都可以使用都变量

    • $GLOBALS: 全局变量用于在 PHP 脚本中的任意位置访问全局变量(从函数或方法中均可)。PHP 在名为 $GLOBALS[index] 的数组中存储了所有全局变量。变量的名字就是数组的键。
    • $_SERVER: 保存关于报头、路径和脚本位置的信息, 其中包含都信息在下方表格中
    • $_REQUEST: 用于收集请求参数,数组, 参数名就是索引
    • $_POST: post请求收集参数使用, 数组
    • $_GET: get请求收集参数使用, 数组
    • $_FILES: 
    • $_ENV
    • $_COOKIE
    • $_SESSION

    换行符:PHP_EOL

    元素/代码描述
    $_SERVER
    $_SERVER['PHP_SELF'] 返回当前执行脚本的文件名。
    $_SERVER['GATEWAY_INTERFACE'] 返回服务器使用的 CGI 规范的版本。
    $_SERVER['SERVER_ADDR'] 返回当前运行脚本所在的服务器的 IP 地址。
    $_SERVER['SERVER_NAME'] 返回当前运行脚本所在的服务器的主机名(比如 www.w3school.com.cn)。
    $_SERVER['SERVER_SOFTWARE'] 返回服务器标识字符串(比如 Apache/2.2.24)。
    $_SERVER['SERVER_PROTOCOL'] 返回请求页面时通信协议的名称和版本(例如,“HTTP/1.0”)。
    $_SERVER['REQUEST_METHOD'] 返回访问页面使用的请求方法(例如 POST)。
    $_SERVER['REQUEST_TIME'] 返回请求开始时的时间戳(例如 1577687494)。
    $_SERVER['QUERY_STRING'] 返回查询字符串,如果是通过查询字符串访问此页面。
    $_SERVER['HTTP_ACCEPT'] 返回来自当前请求的请求头。
    $_SERVER['HTTP_ACCEPT_CHARSET'] 返回来自当前请求的 Accept_Charset 头( 例如 utf-8,ISO-8859-1)
    $_SERVER['HTTP_HOST'] 返回来自当前请求的 Host 头。
    $_SERVER['HTTP_REFERER'] 返回当前页面的完整 URL(不可靠,因为不是所有用户代理都支持)。
    $_SERVER['HTTPS'] 是否通过安全 HTTP 协议查询脚本。
    $_SERVER['REMOTE_ADDR'] 返回浏览当前页面的用户的 IP 地址。
    $_SERVER['REMOTE_HOST'] 返回浏览当前页面的用户的主机名。
    $_SERVER['REMOTE_PORT'] 返回用户机器上连接到 Web 服务器所使用的端口号。
    $_SERVER['SCRIPT_FILENAME'] 返回当前执行脚本的绝对路径。
    $_SERVER['SERVER_ADMIN'] 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。
    $_SERVER['SERVER_PORT'] Web 服务器使用的端口。默认值为 “80”。
    $_SERVER['SERVER_SIGNATURE'] 返回服务器版本和虚拟主机名。
    $_SERVER['PATH_TRANSLATED'] 当前脚本所在文件系统(非文档根目录)的基本路径。
    $_SERVER['SCRIPT_NAME'] 返回当前脚本的路径。
    $_SERVER['SCRIPT_URI'] 返回当前页面的 URI。

    4.魔术常量

    即php脚本的预定义常量,在每个脚本中都可访问,随代码所在位置不同而不同

    • __LINE__:  当前行号
    • __FILE__: 当前文件的绝对路径
    • __DIR__: 当前所在目录的绝对路径
    • __FUNCTION__: 当前所在方法的方法名,若不在方法中,则为空
    • __CLASS__: 当前类的类名,若不在类中,则为空
    • __TRAIT__: 
    • __METHOD__: 
    • __NAMESPACE__: 

    内置函数

    php内置函数中文参考

    数组排序  
    sort($arr) 以升序对数组排序
    rsort($arr) 以降序对数组排序
    asort($arr) 根据值升序
    ksort($arr) 根据健升序
    arsort($arr) 根据值降序
    krsort($arr) 根据健降序
    日期
    date(format, time)

    返回时间字符串

    time: 时间戳,默认当前时间

    format: 格式化字符串,格式如下

    • Y: 年,四位数
    • m: 月
    • d: 日
    • 1: 星期几
    • h: 时,12小时格式
    • i: 分
    • s: 秒
    • a: 上下午,am或pm
    date_default_timezone_set("Asia/Shanghai"); 设置当前时区

    mktime(hour,minute,second,month,day,year)

     拿到指定日期都时间戳
       
    数据判断  
    gettype(var) 获取变量的类型,返回字符串
    is_int(var) 是否为整形
    is_string(var) 是否为字符串
    settype(var, type)

    将var转换成type类型,返回是否转换成功。type可能的值如下: 

    'bool','int','float','string','array','object','null'

       
    URL
    htmlspecialchars($url) 把特殊字符转换为 HTML 实体, 就是把<和>之类的 HTML 字符替换为 &lt; 和 &gt; 
    其他
    parg_match("正则", $str) 正则表达式匹配字符串
    include 文件包含命令,将另外的php文件拿过来,若文件不存在,继续执行
    require 文件包含命令,将另外的php文件拿过来,若文件不存在,报错,停止执行
    ini_set() 临时修改配置文件的值,在运行结束后恢复
    ini_get() 获取配置文件中的值
    error_reporting() 设置脚本错误报告的级别

     

     


     

  • 相关阅读:
    kernel 单独编译模块
    Python实现图的经典DFS、BFS、Dijkstra、Floyd、Prim、Kruskal算法
    Python实现BFS和DFS
    dpdk 20.02 igb_uio.ko 编译
    Kubernetes 文档
    controller-runtime/FAQ.md
    kubebuilder2.0学习笔记——进阶使用
    cloud-init 导致虚拟机启动太慢
    关闭 cloud-init 服务
    centos7 安装 docker calico
  • 原文地址:https://www.cnblogs.com/hujingnb/p/10450993.html
Copyright © 2011-2022 走看看