JSON应用场景与实战

  [复制链接]

2150

主题

2176

帖子

8476

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
8476
admin 发表于 2021-5-29 13:51:15
27020 103

6 f* u* A& W, ~- O; s课程目录( k, T+ ~4 |# Y0 y: k  ], k. `7 p5 }3 W
4 ~- f( z8 q2 E2 ]: g
, W! |  [5 e' p" D4 t# |/ J
1,PHP中的json简介" l5 X9 t" j* I8 n* Z
首先我们说json是一种简便的轻量级的数据交换格式,能够在吴福气之间交换数据。
* ]# R1 k# e  C! n1 I$ n% p: e. n0 r  E9 T1 X
json起源
( o; ]% S4 j: d# H' \/ j# Q7 ^# U4 r+ a7 ~5 Z6 X, a, n6 {

  M, [( C& o& x% N  o. I% o2 _4 G, c/ [1 ]* U
% ?; o. ]5 ^% x7 i6 I7 i& H
        1.标量
' M. n1 L/ C1 ~: T! e  y        2.序列
& p1 D. t" c0 l. @7 |% h. p( j        3.映射
, m0 y3 X5 Z, I8 Q
# C* c/ z+ g/ y, Q; ?, E  y& V4 R+ v0 N+ e: z0 O" ^/ k  p
2,怎样使用json
! `4 V* ~& M% A9 |. W% ^" M
9 s6 C9 \) |0 n. U
3 n' a  O5 T: E) o- i+ K        JSON的基本语法
9 b: R) ^6 D+ s. p' F        JSON的四个基本规则:
8 X- a5 A& O# c6 N* j* Y        1、并列的数据之间用逗号(",")分割。
( K8 Q: m' Y8 W# x8 z% Q        2、映射用冒号(":")表示
" W% A$ l+ t" i* f7 v        3、并列的数据集合(数组)用方括号("[]")表示。- G6 r; a# w/ o- t5 ]7 P6 B
        4、映射的集合(对象)用大括号("{}")表示% X6 G0 S6 `  y- ^8 t  b! G/ J; Q
8 ^& o3 x6 N( W) @
' s# G. H  ^/ D$ B3 l# Z
3,json与其他数据交换格式的区别" P" r0 k# v$ ^( q& j# x9 m

8 n; V9 j+ j% S$ i5 f# hXML! O6 i4 P6 [3 Y% _, [& b4 V4 T8 m

: Y, S+ R/ C& F1 N' N# \$ A标准通用标记语言的子集,非常适合web传输,
+ A* n8 ~8 f0 `6 m% z- x1 D6 B8 G. {9 E! f  V
xml提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。5 S& ^$ R# H  U: F
4 L0 e3 T1 K; }1 H. h8 e
Serialize
# [; l! D- e1 {' ~# x' R- f( N3 a6 o2 g
类似JSON PHP的serialize是将变量序列化,返回一个具有变量类型和结构的字符串表达式
% f7 a* b7 o3 S3 t; d( J! Z5 I/ k5 R; f+ S  L; P; o$ O% ~' w; l
Array()/ l2 ]* [4 D: v
$ `8 @! H* f. v& r2 {
基本数据类型,不能让用于数据传输和交替。) o( Q) v$ R' V. a; k$ x6 N

4 Y4 j4 C1 }: i  x0 [' s$ H' e- m: F1 e* Q4 A& E

& C6 R! n. Z$ H% h4,json优缺点
. F. ?- b, G" {+ t- x1 N
) f& K3 t* K# ^4 g4 {( q优点:数据格式比较简单,易于读写,压缩,占用带宽小,网络传输速度快,支持多种语言。/ h9 K$ V. x" Q4 ]3 O

0 c) }. x1 o9 G4 ?1 t/ c缺点:字符集必须是Unicode 受约束忄生强
7 I2 P: a6 T& G1 x9 e: M' o2 F+ `. y) f' Y9 X
语法过于严谨,必须遵循json语法四个原则。; V" D9 i/ `2 z. q

+ H4 `$ X1 Q) q4 k5,JSON 数据格式和 Serialize 数据格式的异同和使用
$ a0 T% s4 q8 B
8 G$ Q; L5 Y, J/ `# X+ q' B( K 相同点:: g/ T4 o8 ~$ a

/ ]$ ?. V) v, W0 _        1、都是把其他数据类型转换成一个可以传输的字符串(除了资源类型)
, [$ |$ u3 x7 E" W# V: w' Y
8 o3 A9 @7 k: J- w; u0 ~3 b0 z# l        2、都是结构忄生数据
3 _% A' k" M- `* f* R0 F4 N$ J4 F
# D. U. y) S" e- t7 g; \ 异同点:
/ t  X; T# U: z# I; U( H/ y* m$ N! [7 }; A7 x, k
        1、Serialize 序列化后的数据格式保存数据原有类型
/ G4 _' ?" s/ `5 I% J
* G- b* b4 o9 e; N; `5 z! O        2、JSON 数据格式要简洁,相比Serialize 序列化之后的数据格式0 p% e: s. P; u, u

2 P: g; L" u8 |& j& o$ P 使用场景:
1 f3 S( l* k# s! }
9 p' W+ Z, j  E% [/ e8 B: m        1、JSON 适合数据量大,不要求保留原有类型的情况
$ E! @7 u% C; _  b) S; \3 y5 |4 i7 i
        2、Serialize 适合存储带有加密方式的数据串,防止数据被中途截取,反序列化破解。! d. @+ N8 t4 Z- V& @* T1 _
: {6 L# h9 X. E  a) V  B
在PHP中使用serialize()序列化数据是非常便捷的。serialize()返回一个字符串,此字符串包含了表示数据的字节流。使用serialize()产生的这个字 符串可以存储于任何地方,同时不会丢失其数据类型和结构,这有利于存储或传递PHP的值。$ {. q) w8 }- e* B
! k& w2 l7 X- n3 y9 M* _
    serialize()可以处理除resource之外的任何类型,甚至可以处理那些包含了指向其自身引用的数组。数组/对象中的引用也将被存储,并且自PHP4版本以后可以同时存储对象的属忄生和方法(PHP3只能存储对象的属忄生)。$ Y- F7 E: J4 x) _' p) C: E
4 O  _8 _( K! I) t' {' l* V
    但是在使用serialize()的时候一定要注意对其内容先进行addslashes()处理,否则序列化的数据中如果有特殊字符就会导致字符串无法使用unserialize()进行反序列化。
8 v8 I# [4 i/ T; t, K4 `6 X. F. Q5 }& n

+ W( p; G7 g, @  Q/ z) i$ ^# U' ~" F7 E0 D' U  R4 Z) }# F% N
6,php操作json的重要函数
6 R! L1 v( W  a- T) |6 D% f$ d2 d( q+ s* p- B  d; Z2 R6 {
加密:json_encode();- x5 r, x2 Z, P% `$ m& L2 y. }! A
& _1 C" h4 h$ X3 Y- T8 T7 \
解密:json_deconde();" q$ r% J4 ?$ c
  r# E6 b; ~0 V
7,使用json实例详解; c% p: ]2 a4 m/ o& e; Z2 {
/ L  T/ T) ?% [6 H
一维数组,多维数组,对象到json数据格式的转换,如何解析一个json数据格式4 ~+ P8 G& }4 p
& }& O  P4 @* w- i
转换json数据格式到对象类型,转换json格式到数组类型(json_decode("",true))。
+ A8 [& d+ q* F& m) H: i3 B: ?3 t+ |8 w

- f! b& D9 U3 l* ?0 X$ h
! j" K4 ^7 j9 Y* `& J, V- s0 D对象转换为json数据时,只转换公有变量,私有变量不转换
) f3 Y& |  b3 @8 X: P7 E  t3 ?. R% v
资源存放>百度网盘) M4 n6 D' V* \+ G

: u2 y- Q# c- V; Z1 k) O下载地址
/ M& H( C) E8 T( u
游客,如果您要查看本帖隐藏内容请回复

  ]' l+ a( B  u) \VIP会员全站免金币
6 ], [; q$ Q' n7 R$ M& y# fIT直通车已为全国各地程序员提供上千G课程资源
' G0 A& J( `+ B# s如您需要购买本站VIP会员,请点击「开通VIP」享受全站资源免金币无限制下载!
( ^3 g" S. I9 A3 T$ A  _, ^, |
, W  `4 D4 O" S失效反馈4 Y* K- k( s* N# C7 [# t
IT直通车所有资源都存放在自己注册的百度网盘,失效可修复,确保持续可用( H; R6 h9 M; d
如您需要的资源链接提示失效,请尽情反馈给我们,将在收到反馈后尽快修复「点击反馈7 y: g4 H$ I/ `7 g& o

6 r8 a4 w8 a5 _+ K. C) s获得帮助: v* W  K! W+ H7 v* e, ]
需要帮助吗?点击网站右侧在线客服,7X12小时在线!7 K5 l2 ^5 D7 K

2 R( @+ X4 h5 Y' }) X
回复

使用道具 举报

王建新1 发表于 2021-5-29 13:54:00
不错 又更新教程了
回复

使用道具 举报

1156414661 发表于 2021-5-30 08:54:53
不错 又更新教程了
回复

使用道具 举报

123457557 发表于 2021-5-31 12:03:06
ttttttttttttt
回复

使用道具 举报

方的豆豆 发表于 2021-5-31 19:54:47 来自手机
楼主发贴辛苦了,谢谢楼主分享
回复

使用道具 举报

天主的爱 发表于 2021-6-1 11:19:09
网盘网盘下载网盘下载
回复

使用道具 举报

风残殒落殒d 发表于 2021-6-2 09:09:08
收割一波好资源
回复

使用道具 举报

井底燕雀傥 发表于 2021-6-2 11:27:15
ttttttttttttt
回复

使用道具 举报

爱过就是完全脖 发表于 2021-6-4 15:00:16
谢谢大哥
回复

使用道具 举报

chris是小胖纸 发表于 2021-6-4 18:52:38
祝IT直通车越办越好
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 AD:IT直通车VIP会员全站免金币下载
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

遇到问题联系客服

售后保障

如您充值或开通会员后资源无法下载

本站有售后服务,联系客服修复即可

[联系客服]-[会员充值]

更多课程

需要帮助吗?请右侧联系在线QQ客服

关于本站

VIP介绍 加入我们

售后服务

QQ客服 Email邮件

网站声明

IT直通车(www.itztc.com)是一个IT视频教程、软件、书籍资源整合分享平台
站内所有资源均来自于互联网,版权归属原资源作者,如无意侵犯您的版权,请联系我们删除处理。

Archiver|手机版|小黑屋|IT学习网 |网站地图

Powered by Discuz! X3.4  © 2001-2013 IT直通车 ICP证:粤ICP备13026616号 增值电信业务经营许可证:粤B2-20140196

返回顶部 返回列表