PHP筆記學習節選(創世紀新篇)

  if ,true,false,return value. php

php之SQL語句中的模糊查找 html

       主要經過LIKE(不區分大小寫)關鍵字實現模糊查找。LIKE條件通常用在指定搜索某字段的時候, 經過"%"或者" _" 通配符的做用實現模糊查找功能,通配符能夠在字段前面也能夠在後面或先後都有。只經過LIKE是沒法實現模糊查找的,所以通配符的做用不可忽略。 mysql

下面是三個實例:
搜索以PHP開頭:
SELECT * FROM table WHERE title  LIKE  'PHP%' 

搜索以PHP結束:
SELECT * FROM table WHERE title  LIKE  '%PHP'

搜索包含PHP100:
SELECT * FROM table WHERE title  LIKE  '%PHP%' 

注:%表示0個或多個字符構成的字符串,_表示單個字符,相似於正則表達式中元字符的做用
在LIKE後面能夠增長其餘條件,相似於if語句
例子的數據庫中的內容


[php]  view plain copy
  1. <?php  
  2.     $conn = @mysql_connect("localhost""root"""or die("數據庫連接錯誤");  
  3.     mysql_select_db("bbs"$conn);  
  4.     mysql_query("set names 'GBK'"); //使用GBK中文編碼;  
  5.       
  6.     if($_GET['key']) {  
  7.           
  8.         $sql = "SELECT * FROM `text` WHERE content LIKE '%$_GET[key]%'";  
  9.         $query = mysql_query($sql);  
  10.           
  11.         while($r=mysql_fetch_array($query)) { 
  1.             echo "$r[content]"."<br>";  
  2.         }  
  3.     }  
  4.       
  5. ?>  
  6.   
  7. <html>  
  8.     <body>  
  9.     <form action="" method="get">  
  10.     關鍵字:  
  11.     <input type="text" name="key" />  
  12.     <input type="submit" name="sub" value="搜索" />  
  13.     </form>  
  14.     </body>  
  15. </html>  

搜索php的效果圖


2、多個關鍵字搜索的原理和技巧
單個關鍵字搜索的步驟:提交表單->PHP文件接收關鍵字->執行SQL->輸出結果
若是是多關鍵字的時候:在提交表單的時候將多個關鍵字用空格或+號分隔開,而後PHP文件接收到所提交的字符串後,經過一些函數如:explore函數將字符串拆分紅多個關鍵字存放在數組中;而後就能夠在數據庫中經過多個LIKE模糊查找獲得所要查找的內容。

3、替換關鍵字高亮顯示
經過模糊查找獲得所要的內容後,使用正則表達式替換所要查找的內容,能夠經過改變顏色,加粗等改變顯示的效果。
[php]  view plain copy
  1. <?php  
  2.     $conn = @mysql_connect("localhost""root"""or die("數據庫連接錯誤");  
  3.     mysql_select_db("bbs"$conn);  
  4.     mysql_query("set names 'GBK'"); //使用GBK中文編碼;  
  5.       
  6.     if($_GET['key']) {  
  7.         $k = explode(" "$_GET[key]);  
  8.           
  9.         $sql = "SELECT * FROM `text` WHERE content LIKE '%$k[0]%' or content LIKE '%$k[1]%'";  
  10.         $query = mysql_query($sql);  
  11.           
  12.         while($r=mysql_fetch_array($query)) {  
  13.             $r[content] = preg_replace("/($k[0])/i""<font color=red><b>\\1</b></font>"$r[content]);  
  14.             $r[content] = preg_replace("/($k[1])/i""<font color=red><b>\\1</b></font>"$r[content]);  
  15.             echo "$r[content]"."<br>";  
  16.         }  
  17.     }  
  18.       
  19. ?>  
  20.   
  21. <html>  
  22.     <body>  
  23.     <form action="" method="get">  
  24.     關鍵字:  
  25.     <input type="text" name="key" />  
  26.     <input type="submit" name="sub" value="搜索" />  
  27.     </form>  
  28.     </body>  
  29. </html>  
固然熟練掌握PHP,要多練習代碼,PHP也有許多集成開發環境,也能夠實現許多軟件項目
相關文章
相關標籤/搜索