Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何用PHP删除空值?

如何用PHP删除空值?
EN

Stack Overflow用户
提问于 2020-09-14 17:57:50
回答 2查看 89关注 0票数 2

我是新接触JSON和PHP的,我在清理这种类型的数组时遇到了问题。在这里,我认为可以工作,但我还不明白它为什么不工作

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for ($i = 0; $i < count($items); $i++) {
    if ($items[$i][] === null) {
        unset($items[$i]['']);
    }
}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[
    { 
        "ticketNumber": Ha&51,
        "qty": 0, 
        "title": "Wheat", 
        "price": 44.2,
        "purchaseDate": null,
        "date": null
    },
    { 
        "ticketNumber": H88i51,
        "qty": 2, 
        "title": "Prince",
        "price": 12.99,
        "purchaseDate": null,
        "date": null
    }
]
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-09-14 18:20:32

以下是一种方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php

$s = <<<eof
[{"ticketNumber": "Ha&51","qty": 0,"title": "Wheat", "price":
44.2,"purchaseDate": null,"date": null},{        "ticketNumber": "H88i51","qty":
2, "title": "Prince", "price": 12.99,"purchaseDate": null,"date": null}]
eof;

$m_json = json_decode($s, true);
$f = fn ($v): bool => $v !== null;

foreach ($m_json as $m_tick) {
   $a[] = array_filter($m_tick, $f);
}

var_export($a);

就我个人而言,我不喜欢这样,因为您正在将不同类型的值传递给filter函数。对于强类型语言,这是不允许的。但另一种选择是枚举“良好”属性,因此在这种情况下它似乎是一个很好的折衷方案。

票数 1
EN

Stack Overflow用户

发布于 2020-09-14 18:02:17

您不需要循环,只需使用array_filter

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php

$array = array(1 => "PHP code tester Sandbox Online",  2 => null);
print_r($array);

$arrayFiltered = array_filter($array);
print_r($arrayFiltered);

这是一个简短的example

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63889507

复制
相关文章
PHP 类型判断和NULL,空值检查
 PHP是一种宽松类型的编程语言,在函数中对传入的参数值的“类型”以及”值是否为空或者NULL“进行检查是不可缺少的步骤。
lin_zone
2018/08/15
3.4K0
震惊 php empty 函数判断结果为空,但实际值却为非空
最近我在一个项目中使用 empty 时获取到了一些意料之外的结果。下面是我处理后的调试记录,在这里与你分享了。
柳公子
2018/09/17
3.3K0
【说站】php中array_filter清除空值
1、array_filter的作用是用回调函数过滤数组中的单元,第二个参数其实是个回调函数,向数组的每个成员都执行这个回调函数。
很酷的站长
2022/11/23
9570
【说站】php中array_filter清除空值
[深入解析C#] 可空值类型
Tony Hoare于1965年在Algol语言中首次引入了null引用的概念,后来他把这项举措称为“十亿美金的过失”。无数开发人员饱受NullReferenceException(.NET)、NullPointerException(Java)等的折磨。由于此类问题的普遍性,Stack Overflow上有大量与之相关的典型问题。既然可空特性如此声名狼藉,为何C# 2以及.NET 2.0要引入可空值类型呢?
科控物联
2022/03/29
2.3K0
fastjson输出空值
在fastjson中,缺省是不输出空值的。无论Map中的null和对象属性中的null,序列化的时候都会被忽略不输出,这样会减少产生文本的大小。但如果需要输出空值怎么做呢?
johnhuster的分享
2022/03/28
1.5K0
python 空值判断
在Python中,None、空列表[]、空字典{}、空元组()、0等一系列代表空和无的对象会被转换成False。除此之外的其它对象都会被转化成True。python变量初始化为空值分别是: 数值 digital_value = 0 字符串 str_value = "" 列表 list_value = [] 字典 ditc_value = {} 元组 tuple_value = () Python中关于空类型的判断使用的内建函数any(), any(iterable) Return True if any element of the iterable is true. If the iterable is empty, return False. Equivalent to:
用户5760343
2022/05/14
4.4K0
Pandas数据处理1、DataFrame删除NaN空值(dropna各种属性值控制超全)
        这个女娃娃是否有一种初恋的感觉呢,但是她很明显不是一个真正意义存在的图片,我们需要很复杂的推算以及各种炼丹模型生成的AI图片,我自己认为难度系数很高,我仅仅用了64个文字形容词就生成了她,很有初恋的感觉,符合审美观,对于计算机来说她是一组数字,可是这个数字是怎么推断出来的就是很复杂了,我们在模型训练中可以看到基本上到处都存在着Pandas处理,在最基础的OpenCV中也会有很多的Pandas处理,所以我OpenCV写到一般就开始写这个专栏了,因为我发现没有Pandas处理基本上想好好的操作图片数组真的是相当的麻烦,可以在很多AI大佬的文章中发现都有这个Pandas文章,每个人的写法都不同,但是都是适合自己理解的方案,我是用于教学的,故而我相信我的文章更适合新晋的程序员们学习,期望能节约大家的事件从而更好的将精力放到真正去实现某种功能上去。本专栏会更很多,只要我测试出新的用法就会添加,持续更新迭代,可以当做【Pandas字典】来使用,期待您的三连支持与帮助。
红目香薰
2023/02/17
4.1K0
Pandas数据处理1、DataFrame删除NaN空值(dropna各种属性值控制超全)
php 多维数组去空值字段/多维数组改键名称
我有这样一个需求,下面我以json格式展示便于查看结构。我需要删除多维数组中的空字段/指定字段,并且修改某些字段的键名称。 [ { "_id":1, "name":"笔记本整机", "tag":"", "list":[ { "_id":19, "name":"笔记本", "tag":"",
友儿
2022/09/11
3.1K0
springboot自动判定空值
搭建springboot项目,我们都是采用的Restful接口,那么问题来了,当前端调用接口或者是其他项目调用时,我们不能单一靠调用方来控制参数的准确性,自己也要对一些非空的 值进行判定。
IT小马哥
2021/03/03
3.9K0
dataframe填充缺失值_pandas填充空值
将其Nan全部填充为0,这时再打印的话会发现根本未填充,这是因为没有加上参数inplace参数。
全栈程序员站长
2022/09/22
2.8K0
C#可空值类型
1. 可空类型修饰符(?)   引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空。   例如:string str=null; 是正确的,int i=null; 编译器就会报错。
_一级菜鸟
2021/08/10
1.4K0
Elasticsearch 空值处理实战指南
Accepts a string value which is substituted for any explicit null values. Defaults to null, which means the field is treated as missing.
铭毅天下
2020/11/19
4K0
Elasticsearch 空值处理实战指南
空值合并运算符(??)
使用空值合并运算符为常量提供默认值,保证常量不为 null 或者 undefined。
用户9914333
2022/12/14
1.4K0
空值合并运算符(??)
TypeScript 空值合并运算符(??)
一、一个简单的组件 让我们从一个简单的组件开始: type Person = { name: string, subscription?: Subscription }; type Subs
阿宝哥
2020/03/18
3.6K0
PG的空值相加如何实现
PostgreSQL数据库中,对于NULL值相加的处理:任何数值和NULL相加都得NULL。
yzsDBA
2022/04/27
2.3K0
SQL学习之空值(Null)检索
在创建表表,我们可以指定其中的列包不包含值,在一列不包含值时,我们可以称其包含空值null。 确定值是否为null,不能简单的检查是否=null。select语句有一个特殊的where子句,可用来检查
郑小超.
2018/01/24
1.8K0
SQL学习之空值(Null)检索
null或空值的判断处理
1,错误用法一: if (name == "") {      //do something } 2,错误用法二: if (name.equals("")) {      //do something } 3,错误用法三: if (!name.equals("")) {      //do something } 我们来解说一下: 上述错误用法1是初学者最容易犯,也最不容易被发现的错误,因为它们的语法本身没问题,Java编译器编译时不报错。但这种条件可能在运行时导致程序出现bug,永远也不会为true,也就是时说,if块里的语句永远也不会被执行。 上述用法二,用法三 的写法,是包括很多Java熟手也很容易犯的错误,为什么是错误的呢?也许你会感到纳闷。 对,它们的写法本身没错,但是,少了一个null判断的条件,试想,如果name=null的情况下,会发生什么后果呢?后果是,你的程序将抛出NullPointerException异常,系统将被挂起,不再提供正常服务。 当然,如果之前已经对name作了null判断的情况例外。 正确的写法应该先加上name != null的条件,如例: if (name != null && !name.equals("")) {      //do something } 或者 if (!"".equals(name)) {//将""写在前头,这样,不管name是否为null,都不会出错。      //do something } 下面,我们举一个简单的例子: TestNullOrEmpty.java
似水的流年
2019/12/08
3.5K0
使用Optioanl优雅的处理空值
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
chenchenchen
2019/11/12
1.9K0
点击加载更多

相似问题

如何用PHP删除空的CSS属性?

120

PHP数组-删除空值

63

如何用php计算数组空值?

433

PHP -从数组中删除空值

36

从数组php中删除空值

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文