监理公司管理系统 | 工程企业管理系统 | OA系统 | ERP系统 | 造价咨询管理系统 | 工程设计管理系统 | 甲方项目管理系统 | 签约案例 | 客户案例 | 在线试用
X 关闭
鹰潭网站建设公司

当前位置:工程项目OA系统 > 泛普各地 > 江西OA系统 > 鹰潭OA > 鹰潭网站建设公司

PHP查询字符串技巧

申请免费试用、咨询电话:400-8352-114

鹰潭网站建设www.diyphp.net

关于一个经验丰富的PHP程序员来说,完成字符串的查询功用曾经不是什么难事了。在这里咱们将会引见一种PHP查询字符串的捷径技巧,供大家参阅。

 

  RL传递变量关于程序员来说曾经是习以为常的工作,很多人会因而以为本文毫无新意。咱们把颠末URL传递变量的办法称作GET办法,别的一种是POST办法。这两种办法在PHP中都十分简单完成。举个比如,假定预备进行数据库查询,需求颠末GET传递三个变量:city、id和paid。

  传统的PHP查询字符串办法是象下面的比如那样结构查询字符串:

/* assume we want to pass this
variables */ 
$city_name = "new york"; 
$invoice_id = 3456; 
$paid = 1; 
$query_string = "city={$city_name}
&id={$invoice_id}&paid={$paid}"; 
$url = "http://www.example.com?" .
$query_string;

 

  如今大部分PHP开发者都曾经习惯于上面这种办法。它在只要三四个变量的时分毫无问题,可是再添加变量的话,代码

  将变得难以了解和保护,并简单引进纤细的过错。

  传递GET变量的最佳办法是颠末PHP5中引进的http_build_query函数,它接纳一个数组参数,回来一个格局正确、颠末

  URL编码的字符串,可以直接拼接在url中。下面是相应的PHP查询字符串比如。

$city_name = "new york"; 
$invoice_id = 3456; 
$paid = 1; 
$fields = array('city' =>
$city_name, 
'id' => $invoice_id, 
'paid' => $paid); 
$url = "http://www.example.com?" .
 http_build_query($fields, '', "&");

 

  在上面这个PHP查询字符串比如中,数组包含了变量名和变量值。你也可以传入只含变量值的数组,函数会使用你供给的变量名(通

  过函数的第二个参数传入)加上数组的索引值结构变量名。比如说你要传递六个城市名,可以象下面这么做。

$fields = array('paris', 
'new york', 
'florence', 
'london', 
'berlin', 
'delhi'); 
$url = "http:/
/www.example.php?" . 
http_build_query($fields,
 'city', "&");

 

  发生的url如下:

  http://www.example.php/?city0=paris&city1=new+york&city2=florence&city3=london&city4=berlin&city5=delhi

  (译注:若是数组元素的key不是默许的整数,那么key就作为对应值的变量名,而象上面比如,数组的key是默许的整数,那么

  变量名是函数第二个参数加上元素的key,所以第一个变量名就是city0)

  PHP查询字符串函数的第三个参数是可选参数,表明变量的分隔符,默许值是‘&’。不过我更喜欢显式的传入这个‘&’分隔符。

  此外还可以传入一个杂乱的数组:

$city_name = "new york"; 
$invoice_id = 3456; 
$currency_name = "euro"; 
$total = 345; 
$receipt_no = "fgf44545"; 
 
$fields = array('city' =>
$city_name, 
'id' => $invoice_id, 
'paid' => array('currency' =>
 $currency_name, 
'amount' => $total, 
'receipt' => $receipt_no)  
); 
$url = "http://www.example.php?" . 
http_build_query($fields, '', "&");

 

  它将生成以下URL:

  http://www.example.com?city=new+york&id=3456&paid%5Bcurrency%5D=euro&paid%5Bamount%5D=345&paid%5Breceipt%

  5D=fgf44545

  总而言之,http_build_query()的确可以简化GET进行PHP查询字符串的结构。

  

发布:2007-03-31 14:58    编辑:泛普软件 · xiaona    [打印此页]    [关闭]
鹰潭OA
联系方式

成都公司:成都市成华区建设南路160号1层9号

重庆公司:重庆市江北区红旗河沟华创商务大厦18楼

咨询:400-8352-114

加微信,免费获取试用系统

QQ在线咨询

泛普鹰潭网站建设公司其他应用

鹰潭软件开发公司 鹰潭门禁系统 鹰潭物业管理软件 鹰潭仓库管理软件 鹰潭餐饮管理软件 鹰潭网站建设公司