PHP json_encode - 奇怪的行为

2023-12-02

Using json_encode对日期数组进行编码,它有时会做一件事,有时会做另一件事。

例如,如果我尝试编码如下内容:

array(6) {
  [0]=>
  string(6) "Jun-24"
  [1]=>
  string(6) "Jun-25"
  [2]=>
  string(6) "Jun-28"
  [3]=>
  string(11) "Training-24"
  [4]=>
  string(6) "Jun-29"
  [5]=>
  string(6) "Jun-30"
}

它将输出

["Jun-24","Jun-25","Jun-28","Training-24","Jun-29","Jun-30"]

但是,当我尝试编码如下内容时:

array(17) {
  [0]=>
  string(6) "Jun-23"
  [1]=>
  string(6) "Jun-24"
  [2]=>
  string(6) "Jun-28"
  [3]=>
  string(11) "Training-24"
  [4]=>
  string(6) "Jun-29"
  [5]=>
  string(6) "Jun-30"
  [6]=>
  string(6) "Jul-06"
  [7]=>
  string(6) "Jul-07"
  [9]=>
  string(6) "Jul-09"
  [10]=>
  string(6) "Jul-16"
  [11]=>
  string(6) "Jul-17"
  [12]=>
  string(6) "Jul-20"
  [13]=>
  string(6) "Jul-23"
  [14]=>
  string(6) "Jul-24"
  [15]=>
  string(6) "Jul-30"
  [16]=>
  string(6) "Aug-01"
  [17]=>
  string(6) "Aug-05"
}

它将输出

{"0":"Jun-23","1":"Jun-24","2":"Jun-28","3":"Training-24","4":"Jun-29","5":"Jun-30","6":"Jul-06","7":"Jul-07","9":"Jul-09","10":"Jul-16","11":"Jul-17","12":"Jul-20","13":"Jul-23","14":"Jul-24","15":"Jul-30","16":"Aug-01","17":"Aug-05"}

(抱歉,找不到失败的较小示例)

重点是,它为什么这样做?选项相同,数组结构相同,有什么问题?


您的 PHP 数组缺少条目 8,因此是映射(对象)而不是列表(数组)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP json_encode - 奇怪的行为 的相关文章

  • 发送变量后的 wsdl 服务响应,php

    我是 SOAP WSDL 函数的新手 我有一位客户从一家从事汽车测试的公司获得了 wsdl 文件 我的客户是他们的分包商 他们告诉我们上传有关车牌 类别等信息 一旦详细信息发送完毕 服务器就会做出成功或失败的响应 请您协助 浏览不同的信息
  • 解析错误:语法错误,意外的 T_RETURN [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 遇到这个问
  • 这个巨大的正则表达式是如何工作的?

    我最近在我的一个目录中的一个名为的文件中找到了下面的代码doc php 文件功能或链接到文件管理器 做得非常好 基本上 它列出了当前目录中的所有文件 并且允许您更改目录 它可以访问我的所有文件 添加 重命名 信息 删除 我不记得安装过它 我
  • php基于onclick函数输入日期类型

    用户选择日期 月份和年份 然后按一个按钮 根据他选择的日期向他显示数据库的值 不知道代码问题出在哪里
  • 将查询字符串附加到任何形式的 URL

    我要求用户在文本框中输入 URL 并需要向其附加查询字符串 URL 的可能值如下 http www example com http www example com http www example com a http www examp
  • PHP 的脚手架 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 PHP 中有什么东西可以像 Rails 一样创建基本的脚手架吗 编辑 我需要一些东西来快速原型化 一些框架比如Symfony http www sym
  • 复杂对象MVC3的JSON序列化

    我有一个问题 我似乎不知道如何序列化类型的对象 public class SchedulingCalendarMonth public List
  • PHP DOM - 剥离 span 标签,保留其内容

    我希望采用如下标记 span class test Some text that is strong bolded strong and contains a a href link a span 并在 PHP 中找到剥离跨度的最佳方法 剩
  • PHP 脚本不断执行 mmap/munmap

    我的 PHP 脚本包含一个循环 它只不过是回显和取消引用指针 如 tab othertab i gt 中的内容 直到昨天 这个脚本开始变得非常慢 比以前慢了 50 倍 之前 它一直运行良好 使用 strace 后 我发现 90 的情况下 脚
  • 合并 2 个数组并合并数字键的结果

    我有 2 个数组 我希望通过每个数字键将其中合并 分组在一起 例如 Array1 2009 gt 131 2008 gt 940 2007 gt 176 2006 gt 1 Array2 2008 gt 9 2007 gt 3 我希望输出是
  • 当我使用 session_start() 时,Xampp 7.0.1 Apache 崩溃

    当我在 PHP 中使用 session start 启动会话时 我的 Apache 服务器停止工作 我正在使用 Windows 版 Xampp 7 0 1 我的配置文件如下所示 即使我把它放在文件的第一行 它也不起作用 有人知道如何解决这个
  • PHP Intl 扩展线程安全吗?

    我一直在阅读有关 PHP 中的语言环境的内容 看起来setlocale 线程有问题 我对线程不太熟悉 文档提到它不是线程安全的 我想让我的项目能够处理某些数字格式 并且 Intl 扩展似乎很有趣 http php net manual en
  • 使(文本到图像)图像具有一定的宽度但无限的长度?

    我有下面的代码 可以用大量文本生成图像 我希望该图像的宽度为 700 像素 我还希望它保留字符串所具有的段落结构 该字符串来自 MySQL 数据库 我怎样才能实现这一点 font 2 width imagefontwidth font st
  • PHP switch case 在 case 中存在多个值

    我有一个变量保存值 每周 每月 季度 和 年度 还有另一个变量保存值从 1 到 10 switch var2 case 1 var3 Weekly break case 2 var3 Weekly break case 3 var3 Mon
  • 在 PHP 中接受带有小数点和千位分隔符的国际数字

    对于用户可以输入能量值来计算相应费用的在线计算器 我需要 PHP 脚本来接受各种用户输入 200 万又四分之一焦耳 的值可以输入为 2000000 25 默认表示法 2 000 000 25 带千位分隔符 2000000 25 逗号作为小数
  • 使用 file_get_content 发布数据

    我已经做了一些关于如何使用的研究file get content与帖子 我也读过this one https stackoverflow com questions 2445276 how to post data in php using
  • 使用 PHP 中的 GD 库在图像上绘图

    我创建了一个代码来生成随机图案图像 它创建一个具有给定宽度和高度的图像 并用 40x40 像素的小矩形填充它 这是我的代码
  • 通过身份验证保护 CodeIgniter 2 应用程序的正确方法是什么?

    I have Ion Auth http benedmunds com ion auth 正确安装并在我的服务器上运行 我也有默认的代码点火器2 新闻 教程在同一个 CI 安装中工作 我只是在玩 并对使用身份验证系统 封闭 或保护整个应用程
  • 使用 ImageMagick (PHP) 将 2 个图像并排合并为 1 个图像

    我认为这是一件容易的事 我有 2 张图片 JPG 我希望它们合并成一张图片 其中 2 张图片并排 所以我有图片 A 和图片 B 我想要图片 AB 并排 两个图像具有相同的宽度和高度 在本例中 宽度 200px 高度 300px 但是第二个图
  • 我可以让 swagger-php 在查询字符串上使用数组吗?

    我使用 Swagger php 当我定义查询字符串上的参数时 它可以是一个数组 但据我所知 它不支持这种查询字符串 https api domain tld v1 objects q 1 q 5 q 12 我相信这会被设定in the co

随机推荐

  • SQLite UPSERT /更新或插入

    我需要对 SQLite 数据库执行 UPSERT INSERT 或 UPDATE 有一个命令 INSERT OR REPLACE 在许多情况下很有用 但是 如果您想由于外键而保留自动增量的 id 则它不起作用 因为它会删除该行 创建一个新行
  • 在 Perl 中打开和读取文件的最佳方法是什么?

    请注意 我并不是在寻找打开 读取文件的 正确 方式 或者每次都应该打开 读取文件的方式 我只是有兴趣了解大多数人使用什么方式 也许同时学习一些新方法 我的 Perl 程序中一个非常常见的代码块是打开一个文件并对其进行读取或写入 我见过很多这
  • 如何在 OpenGLES 中获取图像变量的绑定点

    我正在尝试在 GLES 着色器中获取图像变量的绑定点 我可以使用该代码对制服或着色器存储块执行此操作 GLenum Prop GL BUFFER BINDING GLint Binding 1 GLint ValuesWritten 0 g
  • 如何在JavaCC中使用反斜杠转义字符换行?

    我有一个任务是创建一个词法分析器 除了一点之外 我已经一切正常 我需要创建一个接受新行的字符串 并且该字符串由双引号分隔 该字符串接受任何数字 字母 某些指定的标点符号 反斜杠和分隔符内的双引号 我似乎不知道如何转义新行字符 是否有某种方法
  • SQLite:如何将查询结果保存为 CSV 文件?

    有没有办法可以将查询结果导出到 CSV 文件中 From here和 d5e5 的评论 您必须将输出切换到 csv 模式并切换到文件输出 sqlite gt mode csv sqlite gt output test csv sqlite
  • 将 YYYYMMDD 字符串转换为 Go 中的有效日期

    我想转换一个字符串 20101011 到有效日期 2010 10 11 但无法弄清楚我们该怎么做 I tried now time Now date now Format 20101011 and date time Parse 20101
  • Android:如何使用 Parse 作为替代 GCM 推送通知提供程序?

    请参阅问题末尾的 EDIT 2 Google 更新了推送的实现方式 因此更容易一起处理 gcm 和解析 我已经在应用程序中使用了 GCM 我想添加解析作为替代方案 这就是我现在所拥有的 所有权限都已正确声明
  • 从资源加载和解析 xml 时出现问题

    我已经编写了一个解析器 它可以从 HttpURLConnection 解析 xml 文件 这很好用 问题 我需要重写这个 以便从本地资源而不是从互联网加载 xml 文件 但我无法让它工作 只是为了让您了解原始 Web 解析器的外观 Inpu
  • 错误:在 Android Studio 中找不到名称为“default”的配置

    我正在使用 volley 库在 android 中执行网络操作 所以我试图在我的项目中添加这个库 该项目是在 Android Studio 和 gradle 系统中创建的 我在项目中添加了 volley 库 但是当我与 gradle 同步时
  • 条件 C# 二进制序列化

    我正在使用 BinaryFormatter 按条件序列化类及其变量 例如 Serializable public class Class1 private Class2 B Serializable public class Class2
  • 将参数传递给 eventListener 函数

    我有这个函数 check e 当我将其添加到 eventListener 时 我希望能够从 test 传递参数 这可能吗 就像说让 mainlink 变量传递参数一样 这还好吗 我把javascript放在下面 我也把它放在jsbin上 h
  • 在 boost::shared_ptr 运算符 bool() 上旋转时需要 C++ 易失性吗? [复制]

    这个问题在这里已经有答案了 可能的重复 何时在多线程中使用 易失性 我有两个线程引用相同的内容boost shared ptr boost shared ptr
  • 如何使用 angular5 防止 Dialog 在有角度的材料中打开两次

  • MATLAB 调试器不再显示行号

    我不完全确定如何 但我的 MATLAB R2013b 副本已停止显示错误发生在哪一行 我只会收到如下错误 下标分配尺寸不匹配 但没有行号与之配合 所以我不知道我的代码的哪一部分导致了问题 我是否搞乱了某个地方的设置 通过 首选项 gt 编辑
  • Python input() 函数中的 NameError [重复]

    这个问题在这里已经有答案了 input var input Press E and Enter to Exit NameError name e is not defined 我正在使用Python 2 5 我怎样才能克服这个错误 inpu
  • 解释用于获取文件名的 linux 正则表达式

    任何人都可以帮助我解释为什么使用这种方式获取文件名 例如 该文件是 fileName Users test am01 output output log fileName fileName 然后我们得到 fileName output lo
  • 在 MS Chart 的缩放视图上获取点

    我正在使用 Microsoft Chart 控件并允许用户选择 我希望能够在用户选择要缩放的区域后获取当前缩放 查看 区域的数据点 关于如何做到这一点有什么想法吗 我正在使用 Net 4 5 这是发送当前可见的示例DataPoints到控制
  • 打印 char 的二进制格式

    我写了一个函数来打印a的二进制格式char几个月前 它是这样的并且运行良好 void PrnCharBit char x int i mask for i CHAR BIT i gt 1 i mask 1 lt lt i 1 x putch
  • 文件未找到异常 IIS7

    我有一个 C Web 应用程序 在 VS2010 中运行得非常好 但是当部署到 IIS7 服务器时 返回 图像未找到图标 这段代码本质上是抓取网络共享位置上图像的缩略图 进行操作 然后推送回网页 Web 服务器与其尝试访问的文件位于同一网络
  • PHP json_encode - 奇怪的行为

    Using json encode对日期数组进行编码 它有时会做一件事 有时会做另一件事 例如 如果我尝试编码如下内容 array 6 0 gt string 6 Jun 24 1 gt string 6 Jun 25 2 gt strin