鍍金池/ 教程/ PHP/ 使用字符串
使用數(shù)組
使用數(shù)值
cookie 和 session
數(shù)據(jù)庫介紹
總結
使用字符串
創(chuàng)建函數(shù)
變量
文件和目錄
控制結構
HTML 表單和 PHP
PHP 概述
創(chuàng)建 Web 應用程序

使用字符串

連接字符串

在編程的時候,特定的字符串連接,使用運算符句點(.)

$greet="hello, " . "world!";

也可使用:

$greeting="hello, "; $greeting .= "world!"

PHP 在處理字符串變量的時候,使用變量替換他們的值:

$greeting="$s1$s2"

處理換行符

PHP 中的 nl2br() 函數(shù)能夠將換行符自動換為 break 標簽

比如:

    <p>備注:
        <textarea name="commit" rows="3" cols="30"></textarea>
    </p>
    //把textare中輸入的換行符轉為break
    print nl2br($_POST["commit"]);

HTML 和 PHP

用戶在表單中可以輸入 HTML 字符,這樣將對頁面的格式產(chǎn)生影響,更糟糕的情況是可能引發(fā)安全方面的問題,所以有必要處理字符串變量中的 HTML 標簽

處理字符串中的HTML標簽的函數(shù)有:

  • htmlspecialchars() 將特定的 HTML 標簽轉換為實體版本
  • htmlentities() 將所有的 HTML 標簽轉換為實體版本 相反功能的函數(shù)為 html_entity_decode
  • strip_tags() 移除所有的 HTML 和 PHP 標簽,如果還需要將換行符轉為 break 標簽,可以先使用 strip_tags 后再使用 nl2br

htmlspecialcharshtmlentities會把 HTML 標簽轉義,比如:

輸入<script>alert(1)</script>會得到&lt;script&gt;alert(1)&lt;/script&gt;gt;

字符串的編碼和解碼

在使用 GET 方法的時候,是把數(shù)據(jù)通過 URL 傳遞的,如果想在傳遞的數(shù)據(jù)中有多個詞以及特殊的符號那就需要對數(shù)據(jù)進行編碼

urlencode 函數(shù)可以對一個字符串進行編碼,使它能夠完全適合 URL 的傳輸,它會用+號替換空格,并把特殊字符替換

    <?php
         $name = "hello,world!\ndaige ";
         $name = urlencode($name);
         $uid="123456";
         $uid=urlencode($uid);
         print "Click <a href=\"name.php?name=$name&uid=$uid \">here</a> to continue";
    ?>

編碼之后的 URL 為:

    name.php?name=hello%2Cworld%21%0Adaige+&uid=123456 

當我們點擊此鏈接的后,我們并不需要使用 urldecode 函數(shù)來解碼才能獲取數(shù)據(jù),因為 PHP 會自動解碼

字符串的加密和解密:

PHP 可以使用 crypt 函數(shù)來對數(shù)據(jù)進行加密,注意它是單向加密

另外 Mcrypt 擴展中提供了一對加密解密函數(shù):mcrypt_encrypt()和 mcrypt_decrypt()

查找子字符串

PHP 提供一些函數(shù)用來拆解,搜索和比較字符串

  • strtok
  • substr
  • strlen
  • str_word_count 字符串的單詞數(shù)量
  • strcmp 不區(qū)分大小寫 strcasecmp
  • strnatcmp 不區(qū)分大小寫 strnatcasecmp
  • strstr 不區(qū)分大小寫 stristr
  • strpos 不區(qū)分大小寫 stripos

替換局部字符串

  • str_ireplace 不區(qū)分大小寫
  • str_replace 區(qū)分大小寫
  • trim 移除字符串首尾的所有空白 rtrim 移除右邊 ltrim 移除左邊
  • ucfirst 第一個字母大寫
  • ucwords 每個單詞第一個字母大寫
  • strtoupper 整個字符串大寫
  • strtolower 整個字符串小寫
上一篇:HTML 表單和 PHP下一篇:總結