详解php中空字符串和0之间的关系


Posted in PHP onOctober 23, 2016

前言

最近在处理关于经纬度的问题时,在建表的时候,选择用字符串varchar存储经度、纬度。为以后的问题埋下伏笔。下面话不多说,我们来看看详细的介绍。

$_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];
 }
}

其实我是想要 过滤掉 经纬度为空的数据,保留经度或纬度为0的数据,但发现在打印列表数据时,总是包含 经纬度为空的数据。

研究了好久,才发现经纬度字段是字符类型,当字段为空时进行  $row['y']== 0 判断时,PHP进行自动转换,所以$row['y']== 0判断在空字符的情况下是正确的。于是总是包含经纬度为空的数据。那么怎么去掉经纬度为空的数据呢?

其实很简单如下:

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

立即过滤掉经纬度为空的数据。

下面是对preg_replace_callback进行代码讲解

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

代码运行结果为

sdjfksdf2345ff

该函数就是将正则匹配的结果作为匿名函数的参数,返回的结果作为替换的结果。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
APACHE的AcceptPathInfo指令使用介绍
Jan 18 PHP
比较简单的百度网盘文件直链PHP代码
Mar 24 PHP
phpMyAdmin自动登录和取消自动登录的配置方法
May 12 PHP
PHP+javascript制作带提示的验证码源码分享
May 28 PHP
PHP中模拟处理HTTP PUT请求的例子
Jul 22 PHP
php使用google地图应用实例
Dec 31 PHP
PHP答题类应用接口实例
Feb 09 PHP
浅谈本地WAMP环境的搭建
May 13 PHP
使用Appcan客户端自动更新PHP版本号(全)
Jul 31 PHP
PHP中SSO Cookie登录分析和实现
Nov 06 PHP
php使用curl详细解析及问题汇总
Aug 11 PHP
Windows平台实现PHP连接SQL Server2008的方法
Jul 26 PHP
PHP判断表达式中括号是否匹配的简单实例
Oct 22 #PHP
浅谈php数组array_change_key_case() 函数和array_chunk()函数
Oct 22 #PHP
PHP 常用时间函数资料整理
Oct 22 #PHP
详解PHP编码转换函数应用技巧
Oct 22 #PHP
PHP实现加密文本文件并限制特定页面的存取的效果
Oct 21 #PHP
PHP实现多关键字加亮功能
Oct 21 #PHP
PHP实现Google plus的好友拖拽分组效果
Oct 21 #PHP
You might like
PHP curl_setopt()函数实例代码与参数分析
2011/06/02 PHP
PHP通过CURL实现定时任务的图片抓取功能示例
2016/10/03 PHP
Django 标签筛选的实现代码(一对多、多对多)
2018/09/05 PHP
php获取小程序码的实现代码(B类接口)
2020/06/13 PHP
javaScript 数值型和字符串型之间的转换
2009/07/25 Javascript
通过javascript的匿名函数来分析几段简单有趣的代码
2010/06/29 Javascript
Javascript 学习笔记之 对象篇(二) : 原型对象
2014/06/24 Javascript
比较常见的javascript中定义函数的区别
2015/11/09 Javascript
微信jssdk在iframe页面失效问题的解决措施
2016/03/03 Javascript
jquery分隔Url的param方法(推荐)
2016/05/25 Javascript
js 实现数值的千分位及保存小数方法(推荐)
2016/08/01 Javascript
基于JavaScript实现树形下拉框
2016/08/10 Javascript
Bootstrap 网格系统布局详解
2017/03/19 Javascript
JavaScript的继承实现小结
2017/05/07 Javascript
Vue组件选项props实例详解
2017/08/18 Javascript
微信小程序自定义toast弹窗效果的实现代码
2018/11/15 Javascript
vue input实现点击按钮文字增删功能示例
2019/01/29 Javascript
如何在JavaScript中谨慎使用代码注释
2019/06/21 Javascript
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
vue使用keep-alive实现组件切换时保存原组件数据方法
2020/10/30 Javascript
Vue3 实现双盒子定位Overlay的示例
2020/12/22 Vue.js
python调用cmd复制文件代码分享
2013/12/27 Python
pandas DataFrame索引行列的实现
2019/06/04 Python
Python可以用来做什么
2020/11/23 Python
Ben Sherman官方网站:英国男装品牌
2019/10/22 全球购物
介绍一下XMLHttpRequest对象
2012/02/12 面试题
数控机械专业个人的自我评价
2014/01/02 职场文书
大学生怎样写好自荐信
2014/02/25 职场文书
5s标语大全
2014/06/23 职场文书
2014年大学生工作总结
2014/11/20 职场文书
体育活动总结
2015/02/04 职场文书
本溪水洞导游词
2015/02/11 职场文书
自主招生专家推荐信
2015/03/26 职场文书
经典人生语录分享:不畏将来,不念过去,笑对当下
2019/12/12 职场文书
如何利用Python实现n*n螺旋矩阵
2022/01/18 Python
Kubernetes中Deployment的升级与回滚
2022/04/01 Servers