欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解php中空字符串和0之間的關(guān)系

 更新時(shí)間:2016年10月23日 11:25:28   投稿:daisy  
最近工作需要,在處理關(guān)于經(jīng)緯度的問題建表的時(shí)候,因?yàn)樽侄伟l(fā)現(xiàn)了一些問題,所以這篇文字就來深入探討下php中空字符串和0之間的關(guān)系,感興趣的朋友們可以通過下面這篇文字來詳細(xì)的看看,相信會(huì)對(duì)大家學(xué)習(xí)或只用php具有一定的參考借鑒價(jià)值。

前言

最近在處理關(guān)于經(jīng)緯度的問題時(shí),在建表的時(shí)候,選擇用字符串varchar存儲(chǔ)經(jīng)度、緯度。為以后的問題埋下伏筆。下面話不多說,我們來看看詳細(xì)的介紹。

$_x=$row["x"];
$_y=$row["y"];
if(isset($_x) && isset($_y)){
 if($row["y"] == 0 || $row["x"] == 0){
  $d=$this->getDistance($row["y"],$row["x"],$y,$x);
 }elseif(!empty($row["y"]) && !empty($row["x"])){
  $d=$this->getDistance($row["y"],$row["x"],$y,$x);
 }else{
  continue;
 }
 if($d < $radius){
  $list[]= $data[$key];
 }
}

其實(shí)我是想要 過濾掉 經(jīng)緯度為空的數(shù)據(jù),保留經(jīng)度或緯度為0的數(shù)據(jù),但發(fā)現(xiàn)在打印列表數(shù)據(jù)時(shí),總是包含 經(jīng)緯度為空的數(shù)據(jù)。

研究了好久,才發(fā)現(xiàn)經(jīng)緯度字段是字符類型,當(dāng)字段為空時(shí)進(jìn)行  $row['y']== 0 判斷時(shí),PHP進(jìn)行自動(dòng)轉(zhuǎn)換,所以$row['y']== 0判斷在空字符的情況下是正確的。于是總是包含經(jīng)緯度為空的數(shù)據(jù)。那么怎么去掉經(jīng)緯度為空的數(shù)據(jù)呢?

其實(shí)很簡單如下:

if(isset($_x) && isset($_y)){
 if($row["y"] == "0" || $row["x"] == "0"){
  $d=$this->getDistance($row["y"],$row["x"],$y,$x);

立即過濾掉經(jīng)緯度為空的數(shù)據(jù)。

下面是對(duì)preg_replace_callback進(jìn)行代碼講解

$str="sdjfksdf2345";
$str=preg_replace_callback ( '/\d{4}/', function ($match){
 return $match[0]."ff";
}, $str );
echo $str;
exit;

代碼運(yùn)行結(jié)果為

sdjfksdf2345ff

該函數(shù)就是將正則匹配的結(jié)果作為匿名函數(shù)的參數(shù),返回的結(jié)果作為替換的結(jié)果。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論