zoukankan      html  css  js  c++  java
  • PHP入门01 -- 基本语法

    一、变量引用

      01、引用操作符 & 可以在关联赋值中使用,就像一个别名,使得变量都指向了内存的相同地址

    <?php  
                $a = 5;
                $b = &$a;
                echo $b; //输出5
                $a = 7;
                echo $b; //输出7
            ?>

      02、只有变量才有地址,也就是只有变量才能有引用;

      03、一个变量发生变化,另一个变量的值也会变化;

      04、在使用 unset() 函数时,如果有引用关系,只是解除了这种引用关系,只删除一个名字,另一个还存在;

      05、如果两个变量是引用关系,一个改变,另一个也会改变,但如果给其中一个引用,不是普通的值,而是一个新的引用,则改变引用关系;

    2、变量类型 - PHP支持八种原始类型 -- var_dump()

      01、四种标量类型:布尔型、整型、浮点型、字符串

      02、两种符合类型:数组、对象

      03、两种特出类型:资源(Resource)、NULL

    3、当其他类型转换为 boolean 类型时,以下值被认为是 FALSE:

      01、布尔值FALSE;02、整型值 0;03、浮点型值 0.0(零)04、空白字符串和字符串 “0”;05、没有成员变量的数组(空数组);06、没有单元的对象(仅适用于PHP 4);07、特殊类型 NULL (包括尚未设定的变量);

    二、字符串

      01、一个字符,和多个字符都是字符串(php);

      02、声明一个字符串必须使用单引号 或 双引号引起来;

      03、字符串是没有长度限制;

      04、在单引号中能使用双引号,在双引号中也可以使用单引号;

      05、在单引号中不能再使用单引号,在双引号不能再使用双引号;

      06、可以使用转义字符 :  ;

      07、字符串特殊字符::  (换行) ;  (回车) ;  (水平线)  ; \ (反斜线) ;$ (美元符) ;"  (双引号);

      08、双引号可以解析变量和转义字符,单引号不可以;

      09、尽量使用单引号。

      10、定界符号声明字符串:使用 <<<  小于号,在开始的定界符(自定义的字符串中)一定要左边挨着 <<< ,写完定界的字符串,一定要直接回车(空格都不可以),

        在结尾的字符串定界中,一定要顶头写和开始的字符串要一致,并写完直接回车(空格都不能有);

    //将hello改成'hello',定界符的作用变成单引号作用
    $str =<<<hello
         shi is a content
    hello

    三、数据类型之间的转换

      1、强制转换;

        01、获取变量类型:var_dump();getType(变量);

        02、设置变量类型:setType(变量,类型);  ----- 是将原变量给转换

        03、在变量使用时,前面加上类型符号,转换(例:$d = (int)$int )   ----   是在赋值时给新变量一个新类型,原变量类型不变

        04、intval(),floatval(),strval()

       2、变量类型的测试函数:

    //变量类型的测试函数:
                is_bool(var);//判断是否为布尔型
                is_int(var);//is_integer()、is_long() 判断是否为整型
                is_float(var);//is_double()、is_real(); 判断是否为浮点型
                is_string(var);//判断是否为字符串
                is_array(var);//判断是否为数组
                is_object(var);//判断是否为对象
                is_resource(var);//判断是否为资源类型
                is_null(var);//判断是否为null
                is_scalar(var);//判断是否为标量
                is_numeric(var);//判断是否是任何类型的数字和数字字符串
                is_callable(name);//判断是否是有效的函数名
                $a = true
                if (is_bool()) {
                    # code...
                    echo "true";
                }

    四、常量(一旦声明,常量的值就不会改变)

      1、常量是使用函数 define() 声明;

    <?php
        $root = "localhost";
        define("ROOT", 100);
        echo ROOT; 
    ?>

      2、如果常量没有声明,则常量名在使用时,会自动转为字符串;

      3、常量名称,不要加 $ 符号;

      4、常量名称,默认是区分大小写的,习惯上常量名称全部大写;

      5、可以使用 define()第三个参数来决定是否让这个常量名称区分大小写:true 、false;

      6、常量的值只支持标量数据类型;

      7、常量不能使用 unset()释放一个常量;

      8、可以使用 defined();判断一个常量是否存在;

     五、位运算符

      1、&  =>  按位与   两个二进制数相比同为真才为真

      2、|   =>  按位或   两个二进制数相比一个为真才就为真 

      3、^  => 按位异或  相同为假不同为真

      4、~  => 按位取反

      5、<< => 左移  二进制整体向左移动N个位数,移几位乘几次2

      6、>> => 右移  二进制整体向右移动N个位数,移几位除几次2

  • 相关阅读:
    HDU4812 D Tree(树的点分治)
    BZOJ1834 [ZJOI2010]network 网络扩容(最小费用最大流)
    HDU4862 Jump(放大边权的费用流)
    SCU3185 Black and white(二分图最大点权独立集)
    HDU3729 I'm Telling the Truth(字典序最大的最大流)
    HDU3586 Information Disturbing(树形DP)
    HDU3657 Game(最小割)
    POJ3162 Walking Race(树形DP+尺取法+单调队列)
    SCU3312 Stockholm Knights(最大流)
    Codeforces 161D Distance in Tree(树的点分治)
  • 原文地址:https://www.cnblogs.com/patriot/p/8397847.html
Copyright © 2011-2022 走看看