首页 » Web前端 » php去失落0技巧_弱类型措辞的php对于 0 0000 00 判断与处理问题

php去失落0技巧_弱类型措辞的php对于 0 0000 00 判断与处理问题

访客 2024-10-31 0

扫一扫用手机浏览

文章目录 [+]
小编问题剖析:

  当您的变量涌现0 、"0"、"000" 、"00" 等字符时,由于代码不严谨的时 涌现的问题

办理办法

  对不同类型的变量须要把稳变量的利用场景与逻辑 进行分外处理与逻辑判断

php去失落0技巧_弱类型措辞的php对于 0 0000 00 判断与处理问题

1、利用 === 恒等与 或者 !== 恒不即是 判断 类型字符串 ;

$a = '0' ;$b = 0 ;$c = '000' ;var_dump($a == $b) ;// boolean trueecho PHP_EOL ;var_dump($a == $c) ;// boolean trueecho PHP_EOL ;var_dump($b == $c) ;// boolean trueecho PHP_EOL ;// todo 弱类型下 三个都是相等的 ;var_dump($a === $b) ;// boolean falseecho PHP_EOL ;var_dump($a === $c) ;// boolean falseecho PHP_EOL ;var_dump($b === $c) ;// boolean false// todo 强类型下他们便是不一样的 ;2、利用 in_array 判断 字符串是否存在 , 开启strict 的 严谨模式

$a = '0' ;$b = 0 ;$c = '000' ;$arr = [$a,$b,$c] ;$d = '00' ;var_dump(in_array($d,$arr)) ;// boolean trueecho PHP_EOL ;// say: 宽松模式下 '00' 字符串也存在$arr数组中 实在便是弱类型的弊端,不把稳的话,就随意马虎导致问题 '00' 与 0 '0','000' 匹配成功 实在 数据组并没有‘00’;var_dump(in_array($d,$arr,true)) ;// boolean falseecho PHP_EOL ;// say: 严谨模式下 '00' 字符串不存在$arr数组中 , 不用类型的数据是不会相等的,也便是 '00' 不会与 0 '0','000' 匹配成功,知足严谨的逻辑 ;问题2 剖析:

  当一个数组中包含了这个0 、"0"、"000" 、"00" 等字符时 , 利用array_fliter 函数去除空值,可以将0 、"0"、"000" 、"00" 已去除了的问题 ;

php去失落0技巧_弱类型措辞的php对于 0 0000 00 判断与处理问题
(图片来自网络侵删)
办理办法:

$temp_label_arr = array_filter($temp_label_arr,function ($v, $k){ return $v != '' && $v != null ;},ARRAY_FILTER_USE_BOTH) ;

$a = '0' ;$b = 0 ;$c = '000' ;$f = 1 ;$d = '00' ;$e = '' ;$g = null ;// question : 去除数组中的 空值 ;$arr = [$a,$b,$c,$f,$d,$e,$g] ;var_dump($arr) ;echo PHP_EOL ;/ array (size=7) 0 => string '0' (length=1) 1 => int 0 2 => string '000' (length=3) 3 => int 1 4 => string '00' (length=2) 5 => string '' (length=0) 6 => null / // 利用 array_filter 函数直接去除 var_dump(array_filter($arr)) ;/ array (size=3) 2 => string '000' (length=3) 3 => int 1 4 => string '00' (length=2) /// result : 没有办理我们的问题 ,同时把 ‘0’ 和 0 也一并剔除了eq 2 : array_filter 的 回调函数callback 处理我们的数组 得到应得的数组

$new_arr = array_filter($arr,function ($v, $k){ return $v != '' && $v != null ;},ARRAY_FILTER_USE_BOTH) ;var_dump($new_arr) ;/ array (size=4) 0 => string '0' (length=1) 2 => string '000' (length=3) 3 => int 1 4 => string '00' (length=2) / // result : 根据自己的续期得到对应的数据数组

1

标签:

相关文章

QQ伪装黑客代码大全技术与风险警示

网络安全问题日益凸显。QQ作为一种流行的社交工具,成为了黑客攻击的主要目标之一。本文将针对QQ伪装黑客代码大全进行深入剖析,揭示其...

Web前端 2025-03-02 阅读1 评论0