《PHP應(yīng)用:詳解php中空字符串和0之間的關(guān)系》要點:
本文介紹了PHP應(yīng)用:詳解php中空字符串和0之間的關(guān)系,希望對您有用。如果有疑問,可以聯(lián)系我們。
PHP實戰(zhàn)前言
PHP實戰(zhàn)最近在處理關(guān)于經(jīng)緯度的問題時,在建表的時候,選擇用字符串varchar存儲經(jīng)度、緯度.為以后的問題埋下伏筆.下面話不多說,我們來看看詳細的介紹.
PHP實戰(zhàn)
$_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];
}
}
PHP實戰(zhàn)其實我是想要 過濾掉 經(jīng)緯度為空的數(shù)據(jù),保留經(jīng)度或緯度為0的數(shù)據(jù),但發(fā)現(xiàn)在打印列表數(shù)據(jù)時,總是包含 經(jīng)緯度為空的數(shù)據(jù).
PHP實戰(zhàn)研究了好久,才發(fā)現(xiàn)經(jīng)緯度字段是字符類型,當字段為空時進行? $row['y']== 0
判斷時,PHP進行自動轉(zhuǎn)換,所以$row['y']== 0
判斷在空字符的情況下是正確的.于是總是包含經(jīng)緯度為空的數(shù)據(jù).那么怎么去掉經(jīng)緯度為空的數(shù)據(jù)呢?
PHP實戰(zhàn)其實很簡單如下:
PHP實戰(zhàn)
if(isset($_x) && isset($_y)){
if($row["y"] == "0" || $row["x"] == "0"){
$d=$this->getDistance($row["y"],$row["x"],$y,$x);
PHP實戰(zhàn)立即過濾掉經(jīng)緯度為空的數(shù)據(jù).
PHP實戰(zhàn)下面是對preg_replace_callback進行代碼講解
PHP實戰(zhàn)
$str="sdjfksdf2345";
$str=preg_replace_callback ( '/\d{4}/', function ($match){
return $match[0]."ff";
}, $str );
echo $str;
exit;
PHP實戰(zhàn)代碼運行結(jié)果為
PHP實戰(zhàn)
sdjfksdf2345ff
PHP實戰(zhàn)該函數(shù)就是將正則匹配的結(jié)果作為匿名函數(shù)的參數(shù),返回的結(jié)果作為替換的結(jié)果.
PHP實戰(zhàn)總結(jié)
PHP實戰(zhàn)以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對維易PHP的支持.
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/2965.html