1. 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);
2. PHP 轉義換行符
html里的換行跟程序語言里的換行是不一樣的,你那樣寫在網頁源文件里是:
why it does not work?
Maybe
但ie解釋是是忽略回車的,html認可的換行是<br>。
你那幾句代碼應改成:
<?php
printf("why it does not work?<br>");
printf("Maybe");
?>
你看看是不是換行了?
3. php里有沒有轉義php代碼的函數,如把<php >轉義為轉義字元
<?php
$new=htmlspecialchars("<ahref='test'>Test</a>",ENT_QUOTES);
echo$new;//<ahref='test'>Test</a>
?>
使用這個函數吧 htmlspecialchars
4. php轉義字元
你說的應該是反引用轉義字元
stripslashes();
或者stripcslashes();
5. 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>";
?>
6. 請問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
7. php 轉義字元 \t 怎麼用啊
\t \n 等是為了向操作系統的文本字元表示方式兼容。而echo print 之類的是輸出為HTML標記,所以瀏覽器解析的時候會使這些字元換成了空格。在HTML里沒有製表符的特殊字元表示,只有在<pre>標簽里才會保留製表符。例如:echo "<pre>"."s\tsid\na"."<pre>";
8. PHP正則 轉義如何反斜杠
<?php
if($_POST['name']){
$uisot = $_POST['name'];
$hicuizd = trim($uisot);
$hicuizd = preg_match('/\\\/',$hicuizd);//當轉義符本身第一次轉義之後就和其他特殊字元一樣了,再轉義一下就可以實現了。
if(!$hicuizd){
echo"<script> alert('與反斜杠匹配失敗');</script>";}
else{
echo"<script> alert('與反斜杠匹配成功!');</script>";
}
}
//-------------表單
echo <<<uic
<form id="form1" name="form1" method="post" action="">
請輸入需要匹配的反斜杠:
<input name="name" type="text" id="name" />
<input type="submit" name="Submit" value="提交" />
</form>
uic;
?
9. PHP轉義字元
中括弧的內容是匹配的東西,^> 的意思是匹配所有,除了>這個符號,後面的+意思是前面的東西出現至少1次, 那麼 <[^>]+> 這個模式就是匹配所有的html標簽比如<a>,<div>,<tb>等等, 後面那個 </[^>]+> 就是匹配</a>,</div>,</tb>這些結束標簽
中間圓括弧括起來的就是這個表達式想要抓取的內容,一點 . 的意思是所有字元,*和加號+一樣是重復次數,不同的是*號意思是出現0次或以上次數
總的來說這個表達式就是匹配HTML標簽中間的內容,也就是去掉HTML標簽的作用,其實要達到這個效果不需要這么麻煩,有一個函數可以做這個事情
strip_tags()
10. php轉義字元,這是什麼意思
\的意思是轉義
如果你雙引號里要出現雙引號是不行的,所以要轉義
比如:\"就是相當於'
(轉義雙引號等於單引號)
\'等於'
(轉義單引號等於單引號)
你這段的意思是:執行循環,次數為3次。循環輸出表格的列(align=\ "center \設定為居中)。img是 圖片,scr是圖片位置,位置是數組 $pictures的第$i個(根據循環次數來定)
echo " \ " /></td>"; \ " />是img的結束標記 </td>是列的結束標記
不過我感覺程序有點問題。。