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等

 

转载于:https://www.cnblogs.com/SunShineM/p/6064787.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值