① php查找關鍵詞
好像一句sql搞不定
$k=array();
$sql='SELECTnameFROMtable';
$r=mysql_query($sql);
while($row=mysql_fetch_row($sql)){
array_push($k,$row[0]);
}
foreach($kas$key=>$val){
$k[$key]="titleLIKE'%".$val."%'ORcontentLIKE'%".$val."%'";
}
$sql='SELECTidFROMtableWHERE'.join('OR',$k);
$r=mysql_query($sql);
② 如何用php對xml 進行關鍵字查詢
Xquary是即將普及的對xml的統一查詢辦法,java已經支持,但php只有一些零散的用戶代碼支持。可能是xml畢竟屬於交換格式,查詢這種性能要求高的復雜操作不適合這種格式。所以沒有直接支持。
對於這個例子中的情況,遍歷2層就能查到
<?php
$xml=<<<TTT
<?xml version='1.0' standalone='yes'?>
<r>
<a>
<a1>XXX</a1>
<a2>XXX</a2>
<a3>XXX</a3>
<a4>XXX</a4>
</a>
<b>
<b1>XXX</b1>
<b2>XXX</b2>
<b3>XXX</b3>
<b4>張三</b4>
</b>
</r>
TTT;
function findValue($xml, $value){
$a=new SimpleXMLElement($xml);
foreach($a as $k=>$e)
foreach($e as $c)
if(strcmp(strval($c),$value)===0)
return $e->asXML();
return FASLE;
}
var_mp(findValue($xml,'張三'));
=======
string '<b>
<b1>XXX</b1>
<b2>XXX</b2>
<b3>XXX</b3>
<b4>張三</b4>
</b>' (length=71)
③ PHP中怎麼實現關鍵字搜索
PHP要實現關鍵字查搜索,需要用到like關鍵字來組合查詢條件
like具體實現方法如下:
例一:
1$userForm=M('user');
1$where['name']=array('like','phpernote%');
2$userForm->where($where)->select();
這里的like查詢即為:name like 'phpernote%'
例二:
1$where['name']=array('like',array('%phpernote%','%.com'),'OR');
這里的like查詢即為:name like '%phpernote%' or name like '%.com'
例三:
1$where['name']=array(array('like','%a%'),array('like','%b%'),array('like','%c%'),'phpernote','or');
這里的like查詢即為:(`name` LIKE '%a%') OR (`name` LIKE '%b%') OR (`name` LIKE '%c%') OR (`name` = 'phpernote')
例四:
1$where['_string']='(namelike"%phpernote%")OR(titlelike"%phpernote")'
這里的like查詢即為:name like '%phpernote%' or title like '%phpernote'
④ php通過mysql like搜索關鍵詞查詢,所有符合數據遍歷出來
<?php
$host="localhost";
$username="root";
$password="root";
$db="db4"; //庫名
$mysql_table="person"; //表名
//連接資料庫,面向過程
$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 "%think%" order by id ASC LIMIT '.($page-1)*$pageSize .",{$pageSize}";
// 節點名 關鍵字 節點名 可指定數量limit後可寫一個指定的數字
//$sql="select * from $mysql_table"
//把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 數組 怎麼實現關鍵詞查找
這個關鍵詞是包含在數組中的key中還是value中?
如果是包含在key中的話,可以這么寫
foreach($arrayas$k=>$v){
if(strstr($k,$keyword,true)){
return$k;
}
}
如果關鍵詞包含在value中的話,就這么寫
foreach($arrayas$k=>$v){
if(strstr($v,$keyword,true)){
return$v;
}
}
⑥ php多關鍵字查詢怎麼實現
$_keywords=$_GET['q'];
$key=explode('',$_keywords);
if(sizeof($key)==1){
$where="titlelike'%{$_keywords}%'";
}else{
froeach($keyas$word){
$k[]="titlelike'%{$word}%'";
}
$where=join('or',$k);
}
$sql="select*fromnewswherestatus=1and({$where})andcatid=23orderbyiddesc";
⑦ php多關鍵字查詢問題
為樓主提供一個思路,接收過的參數,然後取到字元串,使用explode函數,將關鍵字以空格為分界拆成單個字元串,然後遍歷,再進行資料庫查詢
⑧ PHP怎麼實現檢索文件內容中存在關鍵字的文件
先遍歷目錄文件,把文件名保存到數據,然後使用函數檢索文件名是否包含關鍵詞即可。
⑨ php的關鍵字查詢定位搜索代碼,一直在報錯,請大家幫忙看看
從代碼來看,很明顯echo缺少右邊的雙引號",你只需要補全右邊的雙引號就可以了。
⑩ 如何用PHP對輸入的關鍵字進行模糊查詢
使用 like 運算符 做查詢條件 如where emp_name like %王% 查詢到所有姓名裡麵包含 王 字的記錄