- php中空字符串和0之間的關(guān)系詳解 推薦度:
- 相關(guān)推薦
詳解php中空字符串和0之間的關(guān)系
近期因工作需要,在處理關(guān)于經(jīng)緯度的問(wèn)題建表的時(shí)候,因?yàn)樽侄伟l(fā)現(xiàn)了一些問(wèn)題,所以這篇文字就來(lái)深入探討下php中空字符串和0之間的關(guān)系,感興趣的朋友們可以通過(guò)下面這篇文字來(lái)詳細(xì)的看看,相信會(huì)對(duì)大家學(xué)習(xí)或只用php具有一定的參考借鑒價(jià)值。
$_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í)我是想要 過(guò)濾掉 經(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í)很簡(jiǎn)單如下:
if(isset($_x) && isset($_y)){
if($row["y"] == "0" || $row["x"] == "0"){
$d=$this->getDistance($row["y"],$row["x"],$y,$x);
立即過(guò)濾掉經(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é):以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助。
【詳解php中空字符串和0之間的關(guān)系】相關(guān)文章:
php字符串分割的詳解10-07
PHP常用字符串相關(guān)函數(shù)詳解11-03
php數(shù)組和字符串互相轉(zhuǎn)換實(shí)例08-23
PHP的字符串函數(shù)10-06
PHP字符串操作09-29