包含phptargetblank的詞條

本文目錄一覽:

求一個php匹配a標籤,並增加target=”_blank”

function addTargetHtml($str)

{

if(empty($str)){

return false;

}

$reg = ‘/a[^]+?href=[“\’]?([^”\’]+)[“\’]?[^]*([^]+)\/a/’;

preg_match_all($reg, $str, $arr);

if(!isset($arr[0]) || empty($arr[0])){

return false;

}

foreach($arr[0] as $v){

$new_v = substr_replace($v, ‘ target=”_blank” ‘, 2, 1);

$str = str_replace($v, $new_v, $str);

}

return $str;

}

調用:

$str = ‘a href=”xxx”你好/aspan某人/span,diva很高興認識你!/aa href=”aklsjdklajdl”很高興認識你222!/a/div’;

$ar = addTargetHtml($str);

echo $ar;

不知道有沒有增加你說的字符,可以鼠標右鍵打開查看瀏覽器頁面源代碼,可以看到。

php 中如何實現跳轉到一個新的頁面

php頁面自動跳轉的幾種實現方法:

1.meta標籤

2.使用header函數

3.使用JavaScript

方法一:使用meta標籤

meta標籤是html不可或缺的標籤之一,它負責提供文檔的元信息,其參數主要有:

① http-equiv: 與文檔中數據相關的HTTP文件首部

② content: 與命名HTTP首部相關的數據

③ name: 文檔描述

④ url: 與元信息相聯繫的URL

當我們定義屬性http-equiv為refresh,打開此Web頁時系統將根據content規定的值在一定時間內跳轉到相應頁面,

content=”秒數;url=網址”就是定義了過多長時間跳轉到指定的網址。

以下meta標籤告訴系統一秒鐘後頁面自動跳轉到百度首頁:

meta http-equiv=”refresh” content=”1;url=”

以上代碼需要加在HTTP文檔首部中,介於head與/head之間,通常,meta標籤是緊跟在head之後。若需要有多個meta標籤,

它們可以各佔一行。 此法通用於任何環境,包含靜態的網站空間。

方法二:使用header函數 

header函數是php內置函數中的HTTP相關函數之一,該函數送出HTTP協議標頭到瀏覽器。

使用它可以重定向URL,即令頁面轉向其他指定的網頁。

以下例子,執行後將自動打開:

header(“Location: “);

必須注意,header函數只能用在頁面代碼中的html標籤之前,亦即,HTTP首部尚未有其他任何標頭(head)傳送給瀏覽器之前,而且,此前頁面也不能print或echo任何內容。換句話說,在頁面的html出現前,程序只單純地處理header事件。

儘管有如此嚴格的要求,靈活地使用它,仍然可以達成頁面的自動跳轉功能,比如登錄頁面,通過判斷用戶提交的數據是否合法來決定頁面跳轉到何處。

方法三:使用JavaScript

JS非常靈活,利用它可以做出功能非常強大的程序腳本,這裡僅舉一個簡單的頁面自動跳轉的JS例子。

以下代碼執行後瀏覽器將自動轉到,該代碼可放在頁面中的任何合法的位置:

<script language=”javascript” type=”text/javascript”> window.location.href(“”); </script>

此代碼適用於任何Web環境。若加入定時器,將更加妙不可言

PHP中如何將變量傳到另一個PHP網頁中,詳情進來看下。

一、用form表單中的hidden隱藏域。這種方法就是把待傳遞的變量用表單的方式再次傳送,比如在用戶登陸後,把他的信息如$username、$id等等信息用表單發送到下一張網頁,當然,很多情況,是諸如text、option等等框體不想再被看到的話,可以採用隱藏的輸入域。下面是一個實例,假設$username是經過上頁為驗證身份發送到本頁並且在本頁經過驗證的變量,想傳遞到下一頁中去,那麼可以建立文件test4.PHP:

?$username=”張明”;?

form method=”post” action=”test5.php”

input type=”hidden” name=”username” value=”?echo $username?”

input type=”submit” name=”submit” value=”看看”

/form

test5.php:

?echo “你好,$username,歡迎光臨php自學網!”;?

打開apache服務器,輸入在頁面的按鈕上點擊,會發現新出的網頁上$username的值已經傳送過來了。

當然這種方法的弱點是很明顯的,它還要再使用一個表單,而且在test5.php的網頁上想要刷新的話還要重新發送,這顯然是不太友好的。

二、使用session。後來,我查找了一些關於session的文章,覺得這時傳遞變量的一種非常好的方法。下面通過舉例子來說明:

建立一個新文件test6.php:

?session_start(); //初始化一個session

session_register(“username”); //註冊一個session變量

$username=”張明”; //要傳遞的變量值

echo “a href=test7.php去看看/a”;

?

test7.php:

?session_start(); //初始化一個session

echo “你好,$username,歡迎光臨php自學網!”;? //顯示傳遞過來的變量

使用這種方法的時候要注意:?session_start();?應該放在文件的最前面,即”?”前面不應有任何內容,包括空格,這是我調試多次未成功找出的原因。

這個變量只能在當前打開的瀏覽器中傳遞,若要在新打開的窗口中也能傳遞,剛要按下面的方法來做:

文件:test8.php

?session_start();

session_register(“username”);

$username=”張明”;

echo “a href=test7.php?$a=”.session_id().” target=_blank去看看/a”; //將當前的session的id值傳給下一個窗口。

?

test7.php

?session_start();

echo “你好,$username,歡迎你的光臨!”;?

三,通過cookie

建立文件test9.php

?SetCookie(“username”,”張明”);//把username設置到cookie中去

echo “a href=test5.php target=_blank去看看/a”;?

文件test5.php

建立test5.php:

?echo “你好,$username,歡迎你的光臨php自學網!”;?

總結:以上只是一些常用的方法,還有很多的方法,如可以使用數據庫,memcache等等.在此不做過多介紹.

如何在php網頁代碼中實現點擊鏈接讓網頁從新窗口打開?

加上 target=\”_blank\”:

li id=\”current\”a href=\”index.php\” title=\”Index\” target=\”_blank\”首頁/a/li

lia href=\”surf.php\” title=\”Surf Ads\” target=\”_blank\”電影/a/li

lia href=\”offers.php\” title=\”Offers\” target=\”_blank\”訂單/a/li

原創文章,作者:BWXRW,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/318130.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
BWXRW的頭像BWXRW
上一篇 2025-01-11 16:28
下一篇 2025-01-11 16:28

相關推薦

發表回復

登錄後才能評論