php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?

引言

虚头巴脑的大道理就不讲了,直接上代码。

我们说一下把PHP嵌套的数组,转换为JSON字符串,提供给JS前端用。

php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?

基本面

使用json_encode函数将PHP数组传递给JSON字符串和JavaScript数组。在本文,我们使用多维数组进行演示。一个数组是数字索引的,另外两个是混合数字和字典关联的。

无论PHP数组是单级的还是多级的,或者是数字索引的还是关联索引的,下面的代码放在一个JavaScript段中,将会输出到JavaScript:

你可能希望使用JavaScript的JSON。解析来处理PHP的json_encode的结果,在这种情况下,使用以下代码:

对于下面的示例数组,首先用PHP显示该数组,然后包括用于输出它的json_encode的JavaScript段,然后显示输出。最后展示在JavaScript中用于访问结果数组元素或对象属性的语法。

示例数组1

php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?

默认情况下,json_encode将数字索引的PHP数组输出为JavaScript中的数组文本。关联的PHP数组作为对象文本输出。

示例数组2

php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?

在json_encode输出中,外层是数组文字,而第二层形成对象文字。下面的代码注释演示了如何使用JSON_PRETTY_PRINT选项和json_encode实现更可读的输出:

更复杂的数组结构

php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?

这个例子演示了如何使用JSON。解析json_encode的输出。PHP标记为此用单引号括起来。

访问方式可以是索引键,可以是数字。

我们不能在JSON.parse中使用JSON_PRETTY_PRINT,因为那会导致JavaScript错误:未终止的字符串文字。

写在最后

本文通过深度对比PHP的数组,与JS的JSON对象之间的数值转换,可以较为清晰地掌握关键点,而不至于频频踩坑。

Happy coding 🙂

我是@程序员小助手,持续分享编程知识,欢迎关注。

php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?

JavaScript中如何巧妙实现大小写转换?

toLocaleUpperCase 方法:

返回一个字符串,其中所有的字母字符都被转换为大写,同时适应宿主环境的当前区域设置。

stringVar.tolocaleUpperCase( )

必选的 stringVar 引用是一个 String 对象,值或文字。

说明

toLocaleUpperCase 方法转换字符串中的字符,同时适应宿主环境的当前区域设置。在大多数情况下,其结果与利用 toUpperCase 方法所得到的结果是一样的。然而,如果语言规则与常规的 Unicode 大小写映射方式冲突,那么结果就会不同。

toLocaleLowerCase 方法

返回一个字符串,其中所有的字母字符都被转换为小写,同时考虑到宿主环境的当前区域设置。

stringVar.tolocaleLowerCase( )

必选的 stringVar 引用是一个 String 对象,值或文字。

说明toLocaleLowerCase 方法转换字符串中的字符,同时适应宿主环境的当前区域设置。在大多数情况下,其结果与利用 toLowerCase 方法所得到的结果是一样的。然而,如果语言规则与常规的 Unicode 大小写映射方式冲突,那么结果就会不同。

toLowerCase 方法

返回一个字符串,该字符串中的字母被转换为小写字母。

strVariable.toLowerCase( )

"String Literal".toLowerCase( )

说明toLowerCase 方法对非字母字符不会产生影响

下面的示例演示了 of the toLowerCase 方法的效果

var strVariable = "This is a STRING object";

strVariable = strVariable.toLowerCase( );

在执行上一条语句后 strVariable 的值为:

this is a string object

toUpperCase 方法

返回一个字符串,该字符串中的所有字母都被转化为大写字母 。

strVariable.toUpperCase( )

"String Literal".toUpperCase( )

说明toUpperCase 方法对非字母字符不会产生影响。

示例

下面的示例演示了 toUpperCase 方法的效果:

var strVariable = "This is a STRING object";

strVariable = strVariable.toUpperCase( );

在执行上一条语句后 strVariable 的值为:

THIS IS A STRING OBJECT

复制代码 代码如下:

function UpperFirstLetter(str)  

{  

    return str.replace(//b/w+/b/g, function(word) {  

                           return word.substring(0,1).toUpperCase( ) +  

                                  word.substring(1);  

                         });  

}

php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?
php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?
php二维数组转化成一维数组,PHP如何将多维数组有效转成JSON?

怎么将两个一维数组合并成一个二维数组在JavaScript中?

js中可以使用push方法向数组中添加元素。所以,可以使用以下代码实现:

let a1=[1]

let a2=[2]

let newArr=[]

newArr.push(a1,a2)

当然,也可封装为一个函数,如下:

function fn(...params){

let arr=[]

arr.push(...params)

return arr

}

之后直接调用fn即可,如:fn(a1,a2)

手机打字,略有不便,如有错误,烦请指出。

"

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 ttt5cn@163.com 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论