zoukankan      html  css  js  c++  java
  • 0610PHP基础:输出语句、数据类型、变量

    输出语句======================================================================

    一、echo输出、常用
        echo可以输出一个或者多个字符串,逗号隔开
        使用的时候可以不用加括号,也可以加上括号: echo 或 echo()。
    二、print输出
        print只能输出一个字符串,成功输出则返回1
        可以使用括号,也可以不使用括号: print 或 print()。
    三、print_r()
        可以把字符串和数字简单地打印出来,只能输出一个字符串,而数组则以括起来的键和值得列表形式显示,并以Array开头
    四、var_dump()、常用
        判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型。此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。
    五、var_dump返回表达式的类型与值而print_r仅返回结果,相比调试代码使用var_dump更便于阅读。

    数据类型========================================================================

    一、String(字符串):一个字符串是一串字符的序列
        规则:任何文本放在单引号和双引号中
    二、Integer(整型):一个没有小数的数字
        规则:必须至少有一个数字、不能包含逗号或者空格、可以是正数或者负数
    三、Float(浮点型):带小数部分的数字
    四、Boolean(布尔型):true/false
        通常用于判断
    五、Array(数组)
        数组可以在一个变量中存储多个值
        array('volvo','bmw','toyota')
    六、Object(对象)
        对象数据类型也可以用于存储数据
        对象必须声明
        使用class关键字声明类对象
        类是包含属性和方法的结构
      <?php
      class Car
      {
        var $color;
        function __construct($color="green") {
          $this->color = $color;
        }
        function what_color() {
          return $this->color;
        }
      }
      ?>
    七、Null(空值)
      1、Null表示变量没有值
      2、Null是数据类型为Null的值
      3、Null值指明一个变量是否为空值,同时可用于判断数据空值和Null值的区别
      4、也可以通过设置变量值为Null来清空变量数据

    八、数据类型的获取与判断
      1、获取类型gettype()
        integer、double、string、array、object、null、unknown type
      2、判断类型is_类型名()
        is_numeric ( mixed var ):                //检测变量是 否为数字或数字字符串
        is_bool():            // 检测变量是否是布尔型
        is_float():            // 检测变量是否是浮点型 和is_double,is_real()都一样的用法
        is_int():            // 检测变量是否是整数is_integer() 一样的 用法
        is_string():            // 检测变量是否是字符串
        is_object():            // 检测变量是否是一个对象
        is_array():            // 检测变量是否是数组
        is_null():            // 检测变量是否为 NULL
      3、如果是当前类型,则返回值是1,否则什么也不返回

    九、类型的转换
      1、对变量重写
        <?php
        $aa = 11;(原数据)
        $aa = 'aa';(重写数据)
        echo gettype($aa);//string
        ?>
      2、函数:intval()  floatval()  strval()
        < ?php  
        $str="123.9abc";  
        $int=intval($str);     //转换后数值:123  
        $float=floatval($str); //转换后数值:123.9  
        $str=strval($float);   //转换后字符串:"123.9"   
        ?>  
      3、(数据类型)变量:(int)  (bool)  (float)  (string)  (array) (object)
        < ?php  
        $num1=3.14;  
        $num2=(int)$num1;  
        var_dump($num1); //输出float(3.14)  
        var_dump($num2); //输出int(3)  
        ?>  
      4、类型转换settype(变量名,类型)
        <?php
        $num=12.8;
        $flg=settype($num,"int");
        var_dump($flg);  //输出bool(true)
        echo "<br/>";
        var_dump($num); //输出int(12)
        ?>

    变量============================================================================
    一、变量定义:变量是用于存储信息的“容器”
    二、变量规则
            1、$变量名=值
            2、变量名必须以字母或者下划线开始
            3、变量只能包含字母、数字和下划线
            4、变量名是区分大小写的:$y 和 $Y 是两个不同的变量
    三、变量作用域
            定义:变量的作用域是脚本中变量可被引用/使用的区域。
            分类:
        1、局部变量(local):在 PHP 函数内部声明的变量是局部变量,仅能在函数内部访问
         <?php
          function test(){
              $x = 0;
             }
          echo $x;//访问不到$x,报错
         ?>
        2、全局变量(global):在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。
                        错误写法:
                            <?php
            $name = "why";
            function changeName(){
                $name = "what";
            }
            changeName();
            echo "my name is " . $name . "<br/>";
            ?>
          //执行代码的结果是:my name is why,而不是执行changeName()后显示what。分析原因,这是因为函数体changeName内$name变量被缺省设置为局部变量,$name的作用域就是在changeName内
                        修改第一次代码
                            <?php
            global $name;
            $name = "why";
            function changeName(){
                $name = "what";
            }
            changeName();
            echo "my name is " . $name . "<br/>";
           ?>
          //注意:不能在用global声明变量的同时给变量赋值。像global $name = "why"的使用方式是错误的。
        定义全局变量后执行的结果仍然为my name is why,。原来,global的正确用法是:"在一个函数中引入外部的一个变量,如果该变量没有通过参数传递进来,那么就通过global引入进来。" 也就是说,当一个函数引用一个外部变量时,可以在函数内通过global来声明该变量,这样该变量就可以在函数中使用了(相当于当作参数传递进来)
                        修改第二次代码
                            <?php
            $name = "why";
            function changeName(){
                global $name;
                $name = "what";
            }
            changeName();
            echo "my name is " . $name . "<br/>";
           ?>
          //这次的运行结果是:my name is what,说明global是起传递参数的作用,而并非使变量的作用域为全局
                        再次验证
                            <?php
            $name = "why";
            function changeName(){
               global $name;
                $name = "what";
            }
            function changeName2(){
                $name = "where";
            }
            changeName();
            changeName2();
            echo "my name is " . $name . "<br/>";
            ?>
            执行结果为:my name is what,如果在changeName2()中添加global $name,运行结果则是:my name is where。
          综上,global的作用就相当于传递参数,在函数外部声明的变量,如果在函数内想要使用,就用global来声明该变量,这样就相当于把该变量传递进来了,就可以引用该变量了。
                        除了使用global参数定义外,还可以使用超全局变量$GLOBAL:
                            <?php
            $name = "why";
            function changeName(){
                $GLOBALS['name'] = "what";
            }
            changeName();
            echo "my name is " . $name . "<br/>";
            ?>
        3、静态变量(static)
          当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。
          要做到这一点,在第一次声明变量时使用 static 关键字
          function test(){
            static $x = 0;
            echo $x;
            $x++;
             }
          test();
          test();
          每次调用该函数时,该变量将会保留着函数前一次被调用时的值。
          注:该变量仍然是函数的局部变量。
        4、参数作用域(parameter)
          参数是通过调用代码将值传递给函数的局部变量。
          <?php
            test(1);
            function test($x){
              echo $x+2;
               }
            echo $x;//取不到$x,报错
          ?>
    四、对变量的一系列判断
      1、isset()
                判断变量是否已存在  如果有值  返回true  否则返回false
      2、unset()
                把变量删除(释放)掉
      3、empty()
                判断变量是否为空
      4、is_null
                判断变量是否为NULL
      5、具体判断表
         变量                     empty          is_null          isset
         $a=””                    true             false             true
         $a=null                 true             true              false
         $a                         true             true              false
         $a=array()            true             false             true
         $a=false               true             false             true
         $a=15                   false            false            true
         $a=1                     false            false            true
         $a=0                     true             false             true
         $a=”0”                  true              false             true
         $a=”true”              false             false            true
         $a=”false”             false            false             true
    五、可变变量
      一个可变变量获取了一个普通变量的值作为这个可变变量的变量名

  • 相关阅读:
    tomcat做成windows服务之后使用JMX监控的问题
    Spring CORS
    人大金仓
    今天遇到奇怪的事:SVN本地代码的标记突然没了,Clean up也报错
    你真得懂Javascript中的==等于运算符吗?
    Codeforces 384E 线段树+dfs序
    一个图形引擎的画面风格是由那些因素(技术)决定的?
    【BZOJ 1146】【CTSC 2008】网络管理network
    ajax核心技术1---XMLHttpRequset对象的使用
    Android中Application类的详解:
  • 原文地址:https://www.cnblogs.com/zhangbaozhong/p/9162881.html
Copyright © 2011-2022 走看看