『壹』 php轉義字元
你說的應該是反引用轉義字元
stripslashes();
或者stripcslashes();
『貳』 PHP如何去掉轉義
string addslashes ( string str) 返回字元串,該字元串為了資料庫查詢語句等的需要在某些字元前加上了反斜線。
這些字元是單引號(\')、雙引號(\")、反斜線(\\)與 NUL(NULL 字元) stripslashes作用相反在處理mysql和GET、POST的數據時,常常要對數據的引號進行轉義操作。 PHP中有三個設置可以實現自動對』(單引號),」(雙引號),\\(反斜線)和 NULL 字元轉移。 PHP稱之為魔術引號,這三項設置分別是 magic_quotes_gpc 影響到 HTTP 請求數據(GET,POST 和 COOKIE)。
不能在運行時改變。在 PHP 中默認值為 on。 magic_quotes_runtime 如果打開的話,大部份從外部來源取得數據並返回的函數,包括從資料庫和文本文件,所返回的數據都會被反斜線轉義。該選項可在運行的時改變,在 PHP 中的默認值為 off。 magic_quotes_sybase 如果打開的話,將會使用單引號對單引號進行轉義而非反斜線。
此選項會完全覆蓋 magic_quotes_gpc。如果同時打開兩個選項的話,單引號將會被轉義成 」。而雙引號、反斜線 和 NULL 字元將不會進行轉義。
雖然方便的實現了對特殊符號的自動轉義,但是這樣會使得程序效率降低,並導致程序可移植變得麻煩。在不知道伺服器ini設置的情況下,還需要調用get_magic_quotes_gpc() ,get_magic_quotes_runtime() 或ini_get()來檢測狀態。使用stripslashes去掉轉義
『叄』 PHP 字元轉義 正規
$str = "[emt2],[emt20],[emt20],[emt50],[emt61]";
function __callback($ary){
return "<img src='admin/upimages/" . ( intval(substr($ary[0],4)) > 60 ? 0 : intval(substr($ary[0],4)) ) . ".jpg'>";;
}
echo preg_replace_callback('/\[emt\d{1,2}\]/i' , '__callback' , $str);
『肆』 php 轉義字元
echo "<tr><td><a href=\"$_SERVER['PHP_SELF']?id=1\">上一頁</a><a href=\"$_SERVER['PHP_SELF']?id=2\">下一頁</a></td></tr>";
還是不對,數組特殊,應該如下:
<?php
echo "<tr><td><a href=\"{$_SERVER['PHP_SELF']}?id=1\">上一頁</a><a href=\"{$_SERVER['PHP_SELF']}?id=2\">下一頁</a></td></tr>";
?>
『伍』 請問php中的轉義字元是什麼 能詳細說一下嗎
在php中:
* 以單引號為定界符的php字元串,支持兩個轉義\'和\\
* 以雙引號為定界符的php字元串,支持下列轉義:
\n 換行(LF 或 ASCII 字元 0x0A(10))
\r 回車(CR 或 ASCII 字元 0x0D(13))
\t 水平製表符(HT 或 ASCII 字元 0x09(9))
\\ 反斜線
\$ 美元符號
\" 雙引號
\[0-7]{1,3} 此正則表達式序列匹配一個用八進制符號表示的字元
\x[0-9A-Fa-f]{1,2} 此正則表達式序列匹配一個用十六進制符號表示的字元
舉幾個例子:
一個包含\0特殊字元的例子:
$str = "ffff\0ffff";
echo(strlen($str));
echo("\n");
for($i=0;$i<strlen($str);$i++)echo("\t".ord($str{$i}));
echo("\n");
輸出結果:
----------------------
9
102 102 102 102 0 102 102 102 102
替換特殊字元的例子
$str = "ffff\0ffff";
$str = str_replace("\x0", "", $str);
//或者用$str = str_replace("\0", "", $str);
//或者用$str = str_replace(chr(0), "", $str);
echo(strlen($str));
echo("\n");
for($i=0;$i<strlen($str);$i++)echo("\t".ord($str{$i}));
echo("\n");
輸出結果:
----------------------
8
102 102 102 102 102 102 102 102
八進制ascii碼例子:
//注意,符合正則\[0-7]{1,3}的字元串,表示一個八進制的ascii碼。
$str = "\0\01\02\3\7\10\011\08\8"; //這里的\8不符合要求,被修正為"\\8" (ascii為92和56)
echo(strlen($str));
echo("\n");
for($i=0;$i<strlen($str);$i++)echo("\t".ord($str{$i}));
echo("\n");
輸出結果:
----------------------
11
0 1 2 3 7 8 9 0 56 92 56
十六進制ascii碼例子:
$str = "\x0\x1\x2\x3\x7\x8\x9\x10\x11\xff";
echo(strlen($str));
echo("\n");
for($i=0;$i<strlen($str);$i++)echo("\t".ord($str{$i}));
echo("\n");
輸出結果:
----------------------
10
0 1 2 3 7 8 9 16 17 255
『陸』 PHP如何處理轉義的問題。
$str = "aasdf|asdas\\1022";
這樣
『柒』 php轉義字元,這是什麼意思
\的意思是轉義
如果你雙引號里要出現雙引號是不行的,所以要轉義
比如:\"就是相當於'
(轉義雙引號等於單引號)
\'等於'
(轉義單引號等於單引號)
你這段的意思是:執行循環,次數為3次。循環輸出表格的列(align=\ "center \設定為居中)。img是 圖片,scr是圖片位置,位置是數組 $pictures的第$i個(根據循環次數來定)
echo " \ " /></td>"; \ " />是img的結束標記 </td>是列的結束標記
不過我感覺程序有點問題。。
『捌』 PHP轉義字元
中括弧的內容是匹配的東西,^> 的意思是匹配所有,除了>這個符號,後面的+意思是前面的東西出現至少1次, 那麼 <[^>]+> 這個模式就是匹配所有的html標簽比如<a>,<div>,<tb>等等, 後面那個 </[^>]+> 就是匹配</a>,</div>,</tb>這些結束標簽
中間圓括弧括起來的就是這個表達式想要抓取的內容,一點 . 的意思是所有字元,*和加號+一樣是重復次數,不同的是*號意思是出現0次或以上次數
總的來說這個表達式就是匹配HTML標簽中間的內容,也就是去掉HTML標簽的作用,其實要達到這個效果不需要這么麻煩,有一個函數可以做這個事情
strip_tags()
『玖』 php里有沒有轉義php代碼的函數,如把<php >轉義為轉義字元
<?php
$new=htmlspecialchars("<ahref='test'>Test</a>",ENT_QUOTES);
echo$new;//<ahref='test'>Test</a>
?>
使用這個函數吧 htmlspecialchars
『拾』 php 轉義字元 \t 怎麼用啊
\t \n 等是為了向操作系統的文本字元表示方式兼容。而echo print 之類的是輸出為HTML標記,所以瀏覽器解析的時候會使這些字元換成了空格。在HTML里沒有製表符的特殊字元表示,只有在<pre>標簽里才會保留製表符。例如:echo "<pre>"."s\tsid\na"."<pre>";