欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP正则表达式之2种模式和Cookie详解(代码实例)

程序员文章站 2022-03-23 17:57:50
...

本文目标:

1、了解正则表达式的贪婪模式的定义

2、了解正则表达式的懒惰模式的定义

3、掌握正则表达式的贪婪模式的用法

4、掌握正则表达式的懒惰模式的用法

5、了解PHP中Cookie的定义

6、掌握Cookie的基本用法,获取和设置

(一)、了解正则表达式的贪婪模式的定义

贪婪模式的定义:在可匹配与可不匹配的时候,优先匹配

(二)、了解正则表达式的懒惰模式的定义

懒惰模式的定义:和贪婪模式相反,在可匹配与可不匹配的时候,优先不匹配

(三)、掌握正则表达式的贪婪模式的用法

举例

代码如下:

<?php
//下面的\d表示匹配数字
$p = '/\d+\-\d+/';
$str = "我的电话是010-13875678";
if(  preg_match($p, $str, $match) ){
    echo "字符串符合规则,匹配结果为:<br/>";
    print_r( $match );
}else{
    echo "字符串不符合规则";
}
?>

运行结果为:

字符串符合规则,匹配结果为:
Array ( [0] => 010-13875678

(四)、掌握正则表达式的贪婪模式的用法

举例代码如下:

<?php
//下面的\d表示匹配数字
$p = '/\d?\-\d?/';
$str = "我的电话是010-13875678";
if(  preg_match($p, $str, $match) ){
    echo "字符串符合规则,匹配结果为:<br/>";
    print_r( $match );
}else{
    echo "字符串不符合规则";
}
?>

运行结果为:

字符串符合规则,匹配结果为:
Array ( [0] => 0-1 )

由此可见,贪婪模式是尽可能多的匹配,能多则多,而懒惰模式是尽可能少的匹配,能少则少

(五)、了解PHP中Cookie的定义

Cookie就是一组多组数据,只不过这个数据是存储到客户端的浏览器中,我们通过Cookie来存储用户的部分体积小的数据。比如保存用户的登录账号信息到客户端的浏览器中

(六)、掌握PHP中Cookie的基本用法,获取和设置

1、php中设置cookie,是用方法setcookie,但是setcookie方法其实是有7个参数的,不过常用的参数是以下几个

name( Cookie名)可以通过$_COOKIE['name'] 进行访问

value(Cookie的值)

expire(过期时间)Unix时间戳格式,默认为0,表示浏览器关闭即失效

path(有效路径)如果路径设置为'/',则整个网站都有效

domain(有效域)默认整个域名都有效

2、php中获取一个cookie,通过$_COOKIE["参数名"]

具体代码如下:

实践目标:

1、使用参数name,value

<?php
$name = "zhangsan";
setcookie("name",$name);
?>

运行结果为空

我们刚刚说这些cookie是存储到浏览器中,那么如何查看呢?

步骤如下:

1、按下F12

2、点击Application

PHP正则表达式之2种模式和Cookie详解(代码实例)

3、点击Cookies,找到我们对应的域名

PHP正则表达式之2种模式和Cookie详解(代码实例)

这样我们可以看到我们设置的name数据

我们可以看到其实这条记录其实还有很多属性,除了name,值,还有Domain,Path,Expires

默认path就是当前页面所在的目录

Expires表示有效期,默认就是一个会话有效时间

现在我们来看下把这个zhangsan输出来

具体代码如下:

<?php

$name = "zhangsan";
echo $_COOKIE["name"];

?>

输出结果如下:

zhangsan

接下来我们来试试另外一个参数,有效时间,我们希望将这个数据的有效时间就是5秒钟,超过了以后,就失效

<?php
$name = "zhangsan";
setcookie("name",$name,time()+5);
echo "cookie name值=".$_COOKIE["name"];
echo " 该值将在5秒钟后失效";
?>

运行结果为:

cookie name值=zhangsan 该值将在5秒钟后失效

5秒钟后我们再来运行结果

运行结果为:

Notice: Undefined index: name in D:\E-class\class-code\classing\index.php on line 10
cookie name值= 该值将在5秒钟后失效

总结:

1、了解正则表达式的贪婪模式的定义

2、了解正则表达式的懒惰模式的定义

3、掌握正则表达式的贪婪模式的用法

4、掌握正则表达式的懒惰模式的用法

5、了解PHP中Cookie的定义

6、掌握Cookie的基本用法,获取和设置

以上就是PHP正则表达式之2种模式和Cookie详解(代码实例)的详细内容,更多请关注其它相关文章!

相关标签: 正则表达式