首頁 >後端開發 >php教程 >PHP正規表示式之2種模式與Cookie詳解(程式碼實例)

PHP正規表示式之2種模式與Cookie詳解(程式碼實例)

易达
易达原創
2020-05-30 17:43:202046瀏覽

本文目標:

1、了解正規表示式的貪婪模式的定義

2、了解正規表示式的懶惰模式的定義

3、掌握正規表示表達式的貪婪模式的用法

4、掌握正規表示式的懶惰模式的用法

#5、了解PHP中Cookie的定義

6、掌握Cookie的基本用法,獲取和設定

(一)、了解正規表示式的貪婪模式的定義

#貪婪模式的定義:在可匹配與可不匹配的時候,優先匹配

(二)、了解正規表示式的懶惰模式的定義

懶惰模式的定義:和貪婪模式相反,在可匹配與可不匹配的時候,優先不符

(三)、掌握正規表示式的貪婪模式的用法

範例

程式碼如下:

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

運行結果為:

字串符合規則,符合結果為:
Array ( [0] => 010-13875678 

(四)、掌握正規表示式的貪婪模式的用法

舉例程式碼如下:

<?php
//下面的\d表示匹配数字
$p = &#39;/\d?\-\d?/&#39;;
$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詳解(程式碼實例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn