[轉]PHP字串過濾需要的函數,安全MYSQL

來源:互聯網
上載者:User

From http://www.diybl.com/course/4_webprogram/php/phpjs/2008410/109222.html

 

htmlspecialchars
將特殊字元轉成 HTML 格式。

文法: string htmlspecialchars(string string);

傳回值: 字串

函數種類: 資料處理

 

 
 
內容說明

本函數將特殊字元轉成 HTML 的字串格式 ( &....; )。最常用到的場合可能就是處理客戶留言的留言版了。

 

& (和) 轉成 &
" (雙引號) 轉成 "
< (小於) 轉成 &lt;
> (大於) 轉成 &gt;
此函數只轉換上面的特殊字元,並不會全部轉換成 HTML 所定的 ASCII 轉換。

 

 
 
使用範例

<FORM ACTION=bla>
<H2>Restaurant Description<H2>
Name of restaurant:
<INPUT TYPE=text NAME="restname" VALUE="<?
     echo HTMLSpecialChars($restname); ?>">
<!-- 變數 $restname 是醬子的 $restname="\"The White Horse\""; -->
<BR>
輸入描述 (若您會 HTML,可直接使用): <BR>
<TEXTAREA NAME="descript"><?
   echo HTMLSpecialChars($descript);
?></TEXTAREA>
<INPUT TYPE=submit>
</FORM>

 

 

 

htmlentities
將所有的字元都轉成 HTML 字串。

文法: string htmlentities(string string);

傳回值: 字串

函數種類: 資料處理

 

 
 
內容說明

本函數有點像 htmlspecialchars() 函數,但本函數會將所有 string 的字元都轉成 HTML 的特殊字集字串。不過在轉換後閱讀網頁原始碼的方面,會有很多困擾,尤其是網頁原始碼的中文字會變得不知所云,瀏覽器上看到的還是正常的。

 

 

nl2br
將換行字元轉成 <br>。

文法: string nl2br(string string);

傳回值: 字串

函數種類: 資料處理

 

 
 
內容說明

本函數將換行字元轉換成 HTML 換行的 <br> 指令。

 

 

 

addslashes

(PHP 3, PHP 4, PHP 5)

addslashes -- 使用反斜線引用字串
描述
string addslashes ( string str )

返回字串,該字串為了資料庫查詢語句等的需要在某些字元前加上了反斜線。這些字元是單引號('')、雙引號(")、反斜線(\)與 NUL(NULL 字元)。

一個使用 addslashes() 的例子是當你要往資料庫中輸入資料時。例如,將名字 O''reilly 插入到資料庫中,這就需要對其進行轉義。大多資料庫使用 \ 作為轉義符:O\''reilly。這樣可以將資料放入資料庫中,而不會插入額外的 \。當 PHP 指令 magic_quotes_sybase 被設定成 on 時,意味著插入 '' 時將使用 '' 進行轉義。

預設情況下,PHP 指令 magic_quotes_gpc 為 on,它主要是對所有的 GET、POST 和 COOKIE 資料自動運行 addslashes()。不要對已經被 magic_quotes_gpc 轉義過的字串使用 addslashes(),因為這樣會導致雙層轉義。遇到這種情況時可以使用函數 get_magic_quotes_gpc() 進行檢測。

 

例子 1. addslashes() 樣本

<?php
$str = "Is your name O''reilly?";

// 輸出:Is your name O\''reilly?
echo addslashes($str);
?> 

內容說明
本函數可去掉字串中包含的任何 HTML 及 PHP 的標記字串。若是字串的 HTML 及 PHP 標籤原來就有錯,例如少了大於的符號,則也會返回錯誤。而本函數和 fgetss() 有著相同的功能。

 

 

 

 

strip_tags
去掉 HTML 及 PHP 的標記。

文法: string strip_tags(string str);

傳回值: 字串

函數種類: 資料處理

 

 

 

GetImageSize

取得圖片的長寬。

文法: array getimagesize(string filename, array [imageinfo]);

傳回值: 陣列

函式種類: 圖形處理

內容說明

本函式可用來取得 GIF、JPEG 及 PNG 三種 WWW 片的高與寬,不需要安裝 GD library 就可以使用本函式。傳回的陣列有四個元素。傳回陣列的第一個元素 (索引值 0) 是圖片的高度,單位是像素 (pixel)。第二個元素 (索引值 1) 是圖片的寬度。第三個元素 (索引值 2) 是圖片的檔案格式,其值 1 為 GIF 格式、 2 為 JPEG/JPG 格式、3 為 PNG 格式。第四個元素 (索引值 3) 為圖片的高與寬字串,height=xxx width=yyy。可省略的參數 imageinfo 用來取得一些圖片的相關訊息,例如 IPTC (http://www.xe.net/iptc) 的 APP13 標記,就可以加在圖片中,可利用 iptcparse() 來解析。

使用範例

<?php
function MyImg($imgfile) {
  $size = GetImageSize($imgfile);
  echo "<img src=\"$imgfile\" $size[3]>";
}
MyImg("img/img1.gif");
MyImg("img/img2.png");
?>

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.