PHP正则表达式之2种模式和Cookie详解(代码实例)
本文目标:
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
3、点击Cookies,找到我们对应的域名
这样我们可以看到我们设置的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的基本用法,获取和设置