php通配符
❶ php里查詢時實現模糊匹配
$sql="select *from mydata where lhnum like '%{$lhnum}%'";
%是通配符
❷ php模糊查詢中的%是什麼意思
那個是通配符
表示匹配任意字元
abc%表示左邊是abc,右邊是任意字元
%abc表示左邊是任意字元,右邊是abc
abc%abc表示左右兩邊是abc,中間是任意字元
%abc%表示中間是abc,左右兩邊是任意字元
更正一個觀念
確切的說不是php模糊查詢中的%
而是sql語言中模糊查詢中的%
sql是一種操作資料庫的語言
無論什麼資料庫,他的sql語句都是大同小異
❸ php正則通配符
用表達式「.+」 匹配除換行符以外從一個字元開始到任意長度字元
❹ php+mysql+like+通配符+變數
<?php
//設置級別錯誤,通知類除外
error_reporting('E_ALL&~E_NOTICE');
/**1---傳入頁碼,使用GET獲取**/
$page=$_GET['p'];
/**2---根據頁碼取出數據:php->mysql處理**/
$host="localhost";
$username="root";
$password="root";
$db="db4"; //資料庫
$mysql_table="person"; //數據表
$table_guanjianzi="think";//關鍵字
$pageSize=10;
$showPage=5;
//連接資料庫,面向過程
$conn=mysqli_connect($host,$username,$password);
if(!$conn){
echo "資料庫連接失敗";
exit;
}
//選擇所要操作的資料庫
mysqli_select_db($conn,$db);
//設置資料庫編碼格式
mysqli_query($conn,"SET NAMES UTF8");
//編寫sql獲取分頁數據 SELECT * FROM 表名 LIMIT 起始位置,顯示條數
//注意:以下id,name,age,say都是欄位節點名,person是表名,db4是資料庫名,think是指定的關鍵字.
$sql = "SELECT id, name, age, say
FROM person
WHERE say LIKE '%{$table_guanjianzi}%' order by id ASC LIMIT ".($page-1)*$pageSize .",{$pageSize}"; //雙引號能包單引號,反過來不行,會出錯./
// $sql = 'SELECT id, name, age, say
// FROM person
// WHERE say LIKE "%'think'%" order by id ASC LIMIT '.($page-1)*$pageSize .",{$pageSize}";
// 節點名 關鍵字 節點名 可指定數量limit後可寫一個指定的數字
//$sql="select * from $mysql_table"
//$sql='select * from data where Id='.$id.' order by '.$item.' desc';
//把sql語句傳送到資料庫
$result=mysqli_query($conn,$sql);
//將數據顯示到table中,並未table設置格式
echo "<div class='content'>";
echo "<table border=1 cellspacing=0 width=30% align=center>";
echo "<tr><td>ID</td><td>NAME</td><td>say</td></tr>";
while ($row = mysqli_fetch_assoc($result)) {
echo "<tr>";
echo "<td>{$row['id']}</td>";
echo "<td>{$row['name']}</td>";
echo "<td>{$row['say']}</td>";
echo "<tr>";
}
echo "</table>";
echo "</div>";
//釋放結果
mysqli_free_result($result);
//關閉資料庫
mysqli_close($conn);
❺ php中$select = sprintf("select * from studentinfo where stuid = %s",$para);
%s 是表示要轉換成字元的數據類型,具體的數據和數據類型,由後面的變數決定。%s 表示一個字元串。
還有其它的,如 :
%c 一個 ASCII 字元
%d 一個整數
%u 一個符號數
%x 一個十六進制數
還有其它的 %f, %F, %e, %E, %g, %G……
具體的可要查PHP手冊
❻ php 正則 匹配換行符的問題
「.」在正則里確實是不會匹配換行符的。
說它是通配符,有點名不符實。
如果你想要匹配包括換行符的所有字元的話,就用類似:[\w\W]或者[\s\S]這樣的「全通配模式」;
你以上的代碼,寫成如下樣式,就OK了:
$str="<div>你好
111
</div>";
$reg="/<div>([\w\W]*?)<\/div>/";
preg_match_all($reg,$str,$str_arr);
var_mp($str_arr);
正則是一門不大不小的學問,需要下一定的功夫在它身上。
❼ .PHP加星號是什麼意思
*.php 表示所有的php文件
*.txt 表示所有的txt文件
*號就是通配符,表示任意字元
❽ PHP模糊查詢怎麼實現
1.請注意php中的變數,始終以 $ 開頭,你有好幾處都沒寫正確
if(!empty($keyword)){
$conn=mysqli_connect(...);
if(mysqli_connect_errno()){
printf("連接失敗:%s
",mysqli_connect_error());
exit();
}
$keyword=addslashes($keyword);
$sql="SELECT*FROMuserwhereusernameLIKE'%$keyword%'";
$result=mysqli_query($conn,$sql);
$user=array();
while($row=mysqli_fetch_assoc($result))
{
$user[]=$row;
}
mysqli_free_result($result);
mysqli_close($conn);
}