189 8069 5689

php数据组合实例,php数据组合实例怎么做

PHP JSON格式数据交互实例代码详解

在PHP中解析JSON主要用到json_encode和json_decode两个PHP

创新互联专注于凤泉网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供凤泉营销型网站建设,凤泉网站制作、凤泉网页设计、凤泉网站官网定制、小程序定制开发服务,打造凤泉网络公司原创品牌,更为您提供凤泉网站排名全网营销落地服务。

JSON函数,比PHP解析XML方便很多,下面详细介绍下PHP

JSON的使用。

JSON基础介绍

JSON(JavaScript

Object

Notation)

是一种轻量级的数据交换格式。

JSON主要有两种结构:

“名称/值”对的集合,在PHP中可以理解为关联数组

(associative

array)。

值的有序列表(An

ordered

list

of

values)。在PHP中可以理解为普通数组(array)。

对象是一个无序的“‘名称/值'对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值'

对”之间使用“,”(逗号)分隔。

数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、

null、对象(object)或者数组(array)。这些结构可以嵌套。

我目前对JSON的理解更偏向于数组,类似于PHP中的关联数组,你可以将PHP数组转换为JSON格式。

更多JSON的介绍请参考JSON官网和IBM关于JSON的介绍

PHP

JSON解析实例

PHP5.2开始已经将JSON作为PHP扩展的一部分,所以并不需要另外安装JSON。另外为了保证下面的PHP

JSON实例不出现中文乱码,请保证你的编码格式为UTF8。

JSON是Javascript的一部分,首先我们看下Javascript中如何定义JSON

复制代码

代码如下:

var

json_obj

=

{'WebName':'PHP网站开发教程网'};

alert(json_obj.WebName);

var

json_arr

=[{'WebName':'PHP网站开发教程网','WebSite':''},{'ArtTitle':'PHP

JSON实例讲解'}]

alert(json_arr[1].ArtTitle);

var

php_json

=

[['PHP网站开发教程网',''],['文章标题','PHP

JSON实例讲解']];

alert(php_json[1][0]);

在这段JSON实例代码中我构建了所有的JSON形式,

第1行,定义了JSON以对象形式存在

第4行,定义了JSON以数组形式存在,嵌套了JSON对象,所以有点类似于PHP的关联数组,其实仍然是对象。

第7行,定了JSON以普通数组形式存在。

注意:由于Javascript是区分大小写的,所以访问JSON关联数组对象时注意key的大小写问题。

PHP与JSON格式数据交互时,第一步需要将PHP数组转换为JSON格式的数据,可使用PHP5自带的json_encode函数,当PHP解析传递过来的JSON格式数据时需要使用json_decode函数进行解析转换为PHP数组,PHP转换并解析JSON数据的实例代码如下

复制代码

代码如下:

?php

$json_arr

=

array('WebName'='PHP网站开发教程网','WebSite'='');

$php_json

=

json_encode($json_arr);

echo

$php_json;

$php_json

=

json_decode($php_json);

print_r($php_json);

?

说明:这里通过PHP定义了关联数组,然后通过json_encode转换为JSON格式的数据,通过echo语句可以看到转换后的JSON对象,通过PHP

JSON解析函数json_decode可以将JSON格式的数据解析为PHP的关联数组。如果编码不正确,JSON中文会出现乱码。如果你使用Editplus调试PHP,请注意保存文件时编码将ANSI改为UTF8。

最后我们来看下完整的PHP

JSON交互实例

复制代码

代码如下:

?php

$json_arr

=

array('WebName'='PHP网站开发教程网','WebSite'='');

$php_json

=

json_encode($json_arr);

?

script

type="text/javascript"

var

php_json

=

?=$php_json?;

/script

script

type="text/javascript"

function

php_json_dis(php_json)

{

alert(php_json.WebName);

alert(php_json.WebSite);

}

php_json_dis(php_json);

/script

至此,PHP通过json_encode和json_decode函数对JSON格式数据进行转换和解析的实例就介绍完了。

PHP问题: PHP二维数据组合

1:

[id] = 408

[type] = china

[reality] = 120.00

[days] = 2016-06-20

2:

[id] = 408

[totalsave] = 200.00

[days] = 2016-06-20

3:

[id] = 408

[totalsave] = 3800.00

[days] = 2016-06-20

4:

[id] = 408

[totalwithdraw] = 92.00

[should] = 0.7176

[days] = 2016-06-20

5:

[id] = 408

[totalwithdraw] = 3908.00

[should] = 14.8504

[days] = 2016-06-20

结论

[id] = 408

[totalwithdraw] = 82.00

[should] = 0.6396

[days] = 2016-06-20

[totalsave] = 3800.00

[type] = 中文

[reality] = 0.00

看不出有神马逻辑关系。。

php怎么把数组组合成post数据?

post的数据也可以是一个json,

php可以用json_encode()把数组转换成json;

例:

$arr = array('a' = 1, 'b' = 2, 'c' = 3, 'd' = 4, 'e' = 5);

echo json_encode($arr);

{"a":1,"b":2,"c":3,"d":4,"e":5}

PHP连接操作access数据库实例

这篇文章主要介绍了PHP连接操作access数据库实例,本文直接给出实现代码,需要的朋友可以参考下

因为之前做的PingSwitch要做一个WEB展示的前端,因为一开始用了Delphi和access的结构,而Delphi与MySQL的连接又相对麻烦,最后只能选择用PHP+Access的组合,比较奇怪,但是也合理·····

在PHP中连接access数据库的话我们必须ADO来连接,这跟ASP中连接数据库非常的类似。下边给出了一段DEMO供大家参考。

?PHP

/*

创建ADO连接

*/

$conn

=

@new

COM("ADODB.Connection")

or

die

("ADO

Connection

faild.");

$connstr

=

"DRIVER={Microsoft

Access

Driver

(*.mdb)};

DBQ="

.

realpath("DATUM/cnbt.mdb");

$conn-Open($connstr);

/*

创建记录集查询

*/

$rs

=

@new

COM("ADODB.RecordSet");

$rs-Open("select

*

from

dbo_dirs",$conn,1,3);

/*

循环读取数据

*/

while(!$rs-eof){

echo

"$rs-Fields["title"]-Value;

echo

"br/";

$rs-Movenext();

//将记录集指针下移

}

$rs-close();

?

这样运行就没问题了····

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例

队列这种数据结构更简单,就像我们生活中排队一样,它的特性是先进先出(FIFO)。

PHP

SPL中SplQueue类就是实现队列操作,和栈一样,它也可以继承双链表(SplDoublyLinkedList)轻松实现。

SplQueue类摘要如下:

SplQueue简单使用如下:

复制代码

代码如下:

$queue

=

new

SplQueue();

/**

*

可见队列和双链表的区别就是IteratorMode改变了而已,栈的IteratorMode只能为:

*

(1)SplDoublyLinkedList::IT_MODE_FIFO

|

SplDoublyLinkedList::IT_MODE_KEEP

(默认值,迭代后数据保存)

*

(2)SplDoublyLinkedList::IT_MODE_FIFO

|

SplDoublyLinkedList::IT_MODE_DELETE

(迭代后数据删除)

*/

$queue-setIteratorMode(SplDoublyLinkedList::IT_MODE_FIFO

|

SplDoublyLinkedList::IT_MODE_DELETE);

//SplQueue::enqueue()其实就是

SplDoublyLinkedList::push()

$queue-enqueue('a');

$queue-enqueue('b');

$queue-enqueue('c');

//SplQueue::dequeue()其实就是

SplDoublyLinkedList::shift()

print_r($queue-dequeue());

foreach($queue

as

$item)

{

echo

$item

.

PHP_EOL;

}

print_r($queue);

而优先队列SplPriorityQueue是基于堆(后文介绍)实现的。

SplPriorityQueue的类摘要如下:

SplPriorityQueue简单使用:

$pq

=

new

SplPriorityQueue();

$pq-insert('a',

10);

$pq-insert('b',

1);

$pq-insert('c',

8);

echo

$pq-count()

.PHP_EOL;

//3

echo

$pq-current()

.

PHP_EOL;

//a

/**

*

设置元素出队模式

*

SplPriorityQueue::EXTR_DATA

仅提取值

*

SplPriorityQueue::EXTR_PRIORITY

仅提取优先级

*

SplPriorityQueue::EXTR_BOTH

提取数组包含值和优先级

*/

$pq-setExtractFlags(SplPriorityQueue::EXTR_DATA);

while($pq-valid())

{

print_r($pq-current());

//a

c

b

$pq-next();

}


分享文章:php数据组合实例,php数据组合实例怎么做
本文来源:http://jkwzsj.com/article/heihge.html

其他资讯