zoukankan      html  css  js  c++  java
  • php2

    1.什么是常量?

      常量可以理解为值不变的全局的量(如圆周率);或者是常量值被定义后,在脚本的其他任何地方都不可以被改变。PHP中的常量分为自定义常量和系统常量

    使用define()函数来定义常量:

    第一个参数“constant_name”为必选参数,常量名称,即标志符,常量的命名规则与变量的一致,不带美元符号。 第二个参数“value”为必选参数,它是常量的值 第三个参数“case_sensitive”为可选参数,指定是否大小写敏感,设定为true表示不敏感,一般不指定第三个参数的情况下,默认第三个参数的值为false。

    define("PI",3.14,true);
    var_dump(PI);//3.14
    var_dump(pi);//3.14
    $a="pi";
    $b=pi;
    var_dump($b);//3.14
    var_dump($a);//pi
    echo constant($a);//3.14

     

     

    define("PI",3.14,true);
    var_dump
    ($b);//3.14 var_dump($a);//pi echo constant($a);//3.14 if (!defined("pi")) { define("PI",3.1415726,true); } echo pi;//3.14

    2.php运算符

         算数运算符

      * 赋值运算符

      * 比较运算符

      * 逻辑运算符

      * 三元运算符

    三元运算符

      (“?:”)三元运算符也是一个比较运算符,对于表达式

      (expr1)?(expr2):(expr3),如果expr1的值为true,则此表达式的值为expr2,否则为expr3。

    $c=1;
    $d=2;
    $e=5;
    echo $c.=$d;//12
    echo ($d<$c || $d<$e)?'输入正确':'输入错误';//输入正确

    3.php语法结构

      顺序结构(代码按照顺序执行结构)

      分支结构(选择结构)(if、if else、if elseif else、switch等)

      循环结构(for、do while()等)

     4.PHP超全局变量

      超全局变量在 PHP 4.1.0 中引入,是在全部作用域中始终可用的内置变量。

      PHP中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以访问它们。

      (1)$_GET 变量是一个数组,内容是由 GET 方法发送的变量名称和值

        $_GET 变量用于收集来自 method="get" 的表单中的值。从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送的信息量也有限制

    <?php

      print_r('<pre>');
      print_r($_GET);

    ?>
    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <form action="" method="get"> <input type="text" name="username"> <input type="text" name="password"> <input type="submit" value="提交"> </form> <a href="abc.php?a=123&b=456">登录</a> </body> </html>

    (2)$_POST变量是一个数组,用于收集来自 post 的表单中的值

        安全性高、POST方法不依赖于URL,不会显示在地址栏。该方法可以没有限制地传递数据到服务器,所有提交的信息在后台传输,用户在浏览器端无法看到该过程。

    (3)$_SERVER 是一个包含了诸如头信息(header) 、路径(path)、以及脚本位置(script locations)等等信息的数组。这个数组中的项目由 Web 服务器创建

      练习:写一个判断请求方式的IS_POST常量

    define('IS_POST',$_SERVER['REQUEST_METHOD']=='POST'?true:false);
    if (IS_POST) {
        echo "<script>alert('是post请求');</script>";
    }else{
        echo "<script>alert('不是post请求');</script>";
    }

    (4)$request

        $_REQUEST 变量用于收集HTML表单提交的数据, $_REQUEST不是一个函数,它是一个超全局变量,里面包括有:

         $_GET

         $_POST

        $_COOKIE

          但是用$_REQUEST()比较$_GET, $_POST, $_COOKIE执行效率相对较低!

    (5)其他超全局变量:

       $GLOBALS - 引用全局作用域中可用的全部变量

       $_FILES - 存储各种与上传文件有关的信息

      $_ENV - 一个包含服务器端环境变量的数组

       $_COOKIE - 用于取回 cookie 的值

       $_SESSION - 用于取回 session 的值

    5.函数

      function 函数名(参数1,参数2,…){ //内容区域 return //返回值(如果需要) }

      注意:函数命名时不可以使用已经声明过的函数或者PHP内置的函数名称

      当我们创建了自定义函数,为了确保程序调用的函数是存在的,经常会先使用function_exists判断一下函数是否存在。

    function sum($a,$b){
        return $a+$b;
    }
    echo sum(2,3);//5
    if (!function_exists('sum')) {//若不写这个判断,重名后会报错
        function sum($a,$b){
            return $a+$b;
        }
    }
    echo sum(4,5);//9

      如果函数内部没有使用return返回值时函数返回值为null

      * 函数无论被调用多少次,函数只被编译一次  

    function abc(){
        $a=1;
        echo $a;
        $a++;
        echo '<br>';
    }
    abc();//1
    abc();//1
    abc();//1

     * 函数名不区分大小写,注意规范

      在函数外声明的全局变量,函数内无法直接使用全局变量

      

    $b=123;
    function sum(){
        echo $b;
    }
    sum();//报错

      传参可以使用外部变量

      

    $b=123;
    function sum($c){
        echo $c;
    }
    sum($b);//123

      内部变量改变不影响外部调用

    $c=34;
    function a(){
        $c=23;
        echo $c;
    }
    a();
    echo '<br>';//23
    echo $c;//34

      函数参数的传址赋值,内部变量发生改变外部也随之改变 

      

    $d=12;
    function b(&$d){
        $d='23457';
        echo $d;
    
    }
    b($d);//23457
    echo $d;//23457

      我们可以使用global引入外部变量来使用(不推荐)

      

    $b=56;
    function sum(){
        global $b;
        echo $b;
    }
    sum();

      函数中还可以定义静态变量,值将会保存在内存中

    function abc(){
        static $a=1;
        echo $a;
        $a++;
        echo '<br>';
    }
    abc();//1
    abc();//2
    abc();//3

    6.php代码复用

      include 和 require

      *就像把文件粘贴到使用函数的地方

      *include 和 require 的区别在于当处理错误时include产生警告错误程序继续进行,require产生致命错误程序停止

    include '123.php';//找不到文件,报错
    echo '123';//123
    require '123.php';//找不到文件报错,无法进行其他操作
    echo '123';//报错

      include_once 和 require_once

        与include 和 require类似,区别在于如果该代码被引用超过一次后就不再引用,避免了函数重复定义,变量重新赋值

    7.php抑错符

      PHP中提供了一个错误控制运算符“@”,对于一些可能会在运行过程中出错的表达式时,我们不希望出错的时候给客户显示错误信息,于是,可以将@放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都被忽略掉; 错误控制前缀“@”不会屏蔽解析错误的信息,不能把它放在函数或类的定义之前,也不能用于条件结构例如if和foreach等

  • 相关阅读:
    1052 Linked List Sorting (25 分)
    1051 Pop Sequence (25 分)
    1050 String Subtraction (20 分)
    1049 Counting Ones (30 分)
    1048 Find Coins (25 分)
    1047 Student List for Course (25 分)
    1046 Shortest Distance (20 分)
    1045 Favorite Color Stripe (30 分)
    1044 Shopping in Mars (25 分)
    1055 The World's Richest (25 分)
  • 原文地址:https://www.cnblogs.com/SunShineM/p/6064787.html
Copyright © 2011-2022 走看看