php join 構(gòu)造sql查詢(xún)語(yǔ)句
來(lái)源:程序員人生 發(fā)布時(shí)間:2013-12-09 04:11:03 閱讀次數(shù):2874次
join() 函數(shù)把數(shù)組元素組合為一個(gè)字符串,join() 函數(shù)是 implode() 函數(shù)的別名,例如下代碼:
- <?php
- $arr = array('hello','world!','beautiful','day!');
- echo join(" ",$arr);
- ?>
-
下面是一段dedecms搜索頁(yè)面的條件利用了join函數(shù):
- if($this->starttime > 0)
- {
- $ksqls[] = " arc.senddate>'".$this->starttime."' ";
- }
- if($this->typeid > 0)
- {
- $ksqls[] = " typeid in (".getsonids($this->typeid).") ";
- }
- if($this->channeltype > 0)
- {
- $ksqls[] = " arc.channel='".$this->channeltype."'";
- }
- if($this->mid > 0)
- {
- $ksqls[] = " arc.mid = '".$this->mid."'";
- }
- $ksqls[] = " arc.arcrank > -1 ";
- $this->addsql = ($ksql=='' ? join(' and ',$ksqls) : join(' and ',$ksqls)." and ($ksql)" );
它這里就構(gòu)成了一條select * from 表 where 條件,根據(jù)$ksql多少來(lái)構(gòu)造成一條完整的sql查詢(xún)語(yǔ)句.
注釋?zhuān)?/strong>join() 可以接收兩種參數(shù)順序,但是由于歷史原因,explode() 是不行的,你必須保證 separator 參數(shù)在 string 參數(shù)之前才行。
數(shù)據(jù)庫(kù)教程中的表可通過(guò)鍵將彼此聯(lián)系起來(lái),主鍵(primary key)是一個(gè)列,在這個(gè)列中的每一行的值都是唯一的,在表中,每個(gè)主鍵的值都是唯一的,這樣做的目的是在不重復(fù)每個(gè)表中的所有數(shù)據(jù)的情況下,把表間的數(shù)據(jù)交叉捆綁在一起。
生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)