• 关于

    php中json

    的搜索结果

问题

PHP 读取 txt 中的 json 数据传递给 JavaScript,显示问题,报错

一枚小鲜肉帅哥 2020-06-20 21:00:59 0 浏览量 回答数 1

问题

php中url接收的json数据,json_decode为空

杨冬芳 2019-12-01 20:18:43 1369 浏览量 回答数 1

回答

这个是json_encode时候unicode字符被编码的结果。 新版本的php中, json_encode可以指定JSON_UNESCAPED_UNICODE参数指定不编码unicode中文. 如果你的版本较低,最好使用自定义函数转换(网上搜索json转中文) 如果是php5.4+可以使用json_encode($data, JSON_UNESCAPED_UNICODE);

杨冬芳 2019-12-02 03:03:16 0 浏览量 回答数 0

阿里云高校特惠,助力学生创业梦!0元体验,快速入门云计算!

学生动手场景应用,快速了解并掌握云服务器的各种新奇玩法!

问题

关于PHP操作JSON数据的问题!

小旋风柴进 2019-12-01 20:10:14 1215 浏览量 回答数 1

问题

Android / Java中的JSON数组迭代

保持可爱mmm 2020-02-07 00:40:18 4 浏览量 回答数 1

回答

所述懒惰单行方法 如果您愿意损失一点点性能,则可以使用JSON方法在一个内衬中执行此操作(尽管有些人报告说它比递归遍历对象要快-很有可能是因为PHP 在调用函数时很慢)。“ 但是我已经做到了。”你说。不完全是-您json_decode在阵列上使用过,但需要先对其进行编码json_encode。 要求 该json_encode和json_decode方法。这些自动捆绑在PHP 5.2.0及更高版本中。如果您使用任何旧版本,则还有一个PECL库(也就是说,在这种情况下,您应该真正更新PHP安装。对5.1的支持已在2006年停止。) 转换一个array/ stdClass- >stdClass $stdClass = json_decode(json_encode($booking)); 转换一个array/ stdClass- >array 手册将第二个参数指定json_decode为: assoc 时TRUE,返回的对象将转换为关联数组。 因此,以下行将把整个对象转换为数组: $array = json_decode(json_encode($booking), true); 问题来源于stack overflow

保持可爱mmm 2020-01-16 17:12:22 0 浏览量 回答数 0

问题

新手,关于PHP操作JSON数据的问题。不胜感激!

杨冬芳 2019-12-01 20:17:41 827 浏览量 回答数 1

回答

JSON (JavaScript Object Notation) 优点: 数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小 易于解析这种语言, 客户端 javascript 可以简单的通过 eval()进行 JSON 数据的读取搜索 支持多种语言, 包括 ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, php, Python, Ruby 等语言服务器端语言, 便于服务器端的解析 在 PHP 世界, 已经有 PHP-JSON 和 JSON-PHP 出现了, 便于 PHP 序列化后的程序直接调用. PHP 服务器端的对象、数组等能够直接生 JSON 格式, 便于客户端的访问提取. 另外 PHP 的 PEAR 类已经提出了支持 (http://pear.php.net/pepr/pepr-proposal-show.php?id=198) 因为 JSON 格式能够直接为服务器端代码使用, 大大简化了服务器端和客户端的代码开发量, 但是完成的任务不变, 且易于维护 缺点: 没有 XML 格式这么推广的深入人心和使用广泛, 没有 XML 那么通用性 JSON 格式目前在 Web Service 中推广还属于初级阶段 PS: 据说 Google 的 Ajax 是使用 JSON+模板 做的

茶什i 2019-12-02 03:21:44 0 浏览量 回答数 0

问题

c语言socket通信时可以发送json格式的数据吗

杨冬芳 2019-12-01 19:34:41 2602 浏览量 回答数 6

问题

php读取json文件并查找其中的内容

a123456678 2019-12-01 20:15:10 2177 浏览量 回答数 1

问题

php实现向json文件中写入

a123456678 2019-12-01 20:21:46 802 浏览量 回答数 1

回答

例子,你参考一下一、json_encode() <?php $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} 再看一个对象转换的例子: $obj->body = 'another post'; $obj->id = 21; $obj->approved = true; $obj->favorite_count = 1; $obj->status = NULL; echo json_encode($obj); 输出 {    "body":"another post",    "id":21,    "approved":true,    "favorite_count":1,    "status":null  } 由于json只接受utf-8编码的字符,所以json_encode()的参数必须是utf-8编码,否则会得到空字符或者null。当中文使用GB2312编码,或者外文使用ISO-8859-1编码的时候,这一点要特别注意。 二、索引数组和关联数组 PHP支持两种数组,一种是只保存"值"(value)的索引数组(indexed array),另一种是保存"名值对"(name/value)的关联数组(associative array)。 由于javascript不支持关联数组,所以json_encode()只将索引数组(indexed array)转为数组格式,而将关联数组(associative array)转为对象格式。 比如,现在有一个索引数组 $arr = Array('one', 'two', 'three'); echo json_encode($arr); 输出 ["one","two","three"] $arr = Array('1'=>'one', '2'=>'two', '3'=>'three'); echo json_encode($arr); 输出变为 {"1":"one","2":"two","3":"three"} 注意,数据格式从"[]"(数组)变成了"{}"(对象)。 如果你需要将"索引数组"强制转化成"对象",可以这样写 json_encode( (object)$arr ); 或者 json_encode ( $arr, JSON_FORCE_OBJECT ); 三、类(class)的转换 下面是一个PHP的类: class Foo {   const ERROR_CODE = '404';   public $public_ex = 'this is public';   private $private_ex = 'this is private!';   protected $protected_ex = 'this should be protected';   public function getErrorCode() {     return self::ERROR_CODE;   } } 现在,对这个类的实例进行json转换: $foo = new Foo; $foo_json = json_encode($foo); echo $foo_json; 输出结果是 {"public_ex":"this is public"} 可以看到,除了公开变量(public),其他东西(常量、私有变量、方法等等)都遗失了。 四、json_decode() 该函数用于将json文本转换为相应的PHP数据结构。下面是一个例子: $json = '{"foo": 12345}'; $obj = json_decode($json); print $obj->{'foo'}; // 12345 通常情况下,json_decode()总是返回一个PHP对象,而不是数组。比如: $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; var_dump(json_decode($json)); 结果就是生成一个PHP对象: object(stdClass)#1 (5) {   ["a"] => int(1)   ["b"] => int(2)   ["c"] => int(3)   ["d"] => int(4)   ["e"] => int(5) } 如果想要强制生成PHP关联数组,json_decode()需要加一个参数true: $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';   var_dump(json_decode($json,true)); 结果就生成了一个关联数组: array(5) {   ["a"] => int(1)   ["b"] => int(2)   ["c"] => int(3)   ["d"] => int(4)   ["e"] => int(5) } 五、json_decode()的常见错误 下面三种json写法都是错的,你能看出错在哪里吗? $bad_json = "{ 'bar': 'baz' }"; $bad_json = '{ bar: "baz" }'; $bad_json = '{ "bar": "baz", }'; 对这三个字符串执行json_decode()都将返回null,并且报错。 第一个的错误是,json的分隔符(delimiter)只允许使用双引号,不能使用单引号。第二个的错误是,json名值对的"名"(冒号左边的部分),任何情况下都必须使用双引号。第三个的错误是,最后一个值之后不能添加逗号(trailing comma)。 另外,json只能用来表示对象(object)和数组(array),如果对一个字符串或数值使用json_decode(),将会返回null。ar_dump(json_decode("Hello World")); //null

小旋风柴进 2019-12-02 02:01:02 0 浏览量 回答数 0

问题

关于 使用Redis HASH的VALUE存放了一段JSON字符串,在并发操作时怎么保证JSON字符串的原子性 问题

爵霸 2019-12-01 20:07:07 1379 浏览量 回答数 1

回答

参考:在 php 中使用 json_encode() 内置函数(php > 5.2)可以使用得 php 中数据可以与其它语言很好的传递并且使用它。这个函数的功能是将数值转换成json数据存储格式。 <?php $arr = array ( 'Name'=>'你妹', 'Age'=>22 ); $jsonencode = json_encode($arr); echo $jsonencode; ?> 程序运行结果如下: {"Name":null,"Age":20}json_encode 函数中中文被编码成 null 了,Google 了一下,很简单,为了与前端紧密结合,Json 只支持 utf-8 编码,我认为是前端的 JavaScript 也是 utf-8 的原因。 <?php $array = array ( 'name'=>iconv('GB18030','utf-8','你妹'), 'sex'=>'men' ); echo json_encode($array); ?> 这个程序的运行结果为: {"title":"\u6d63\u72b2\ue785","body":"men"} iconv 转换格式时用GBK,gb2312 报错问题,是因为GB2312只收录6763个汉字,出现未收录的汉字时,iconv报错。 GBK向下完全兼容GB2312-80,支持更多的字,但仍然会出现错误,解决办法是用GB18030,GB18030基本兼容GBK,又扩充了百余字体。数组中所有中文在json_encode之后都不见了或者出现u6d63等。解决方法是用urlencode()函数处理以下,在json_encode之前,把所有数组内所有内容都用urlencode()处理一下,然用json_encode()转换成json字符串,最后再用urldecode()将编码过的中文转回来。 <?php /************************************************************** * * 使用特定function对数组中所有元素做处理 * @param string &$array 要处理的字符串 * @param string $function 要执行的函数 * @return boolean $apply_to_keys_also 是否也应用到key上 * @access public * *************************************************************/ function arrayRecursive(&$array, $function, $apply_to_keys_also = false) { static $recursive_counter = 0; if (++$recursive_counter > 1000) { die('possible deep recursion attack'); } foreach ($array as $key => $value) { if (is_array($value)) { arrayRecursive($array[$key], $function, $apply_to_keys_also); } else { $array[$key] = $function($value); } if ($apply_to_keys_also && is_string($key)) { $new_key = $function($key); if ($new_key != $key) { $array[$new_key] = $array[$key]; unset($array[$key]); } } } $recursive_counter--; } /************************************************************** * 将数组转换为JSON字符串(兼容中文) * @param array $array 要转换的数组 * @return string 转换得到的json字符串 * @access public * *************************************************************/ function JSON($array) { arrayRecursive($array, 'urlencode', true); $json = json_encode($array); return urldecode($json); } $array = array ( 'Name'=>'你妹', 'Age'=>22 ); echo JSON($array); ?> 运行结果如下: {"Name":"你妹","Age":"22"}

小旋风柴进 2019-12-02 02:03:09 0 浏览量 回答数 0

问题

php采集高手进:利用curl模拟登录抓取数据遇到json调用问题不成功,求助!

杨冬芳 2019-12-01 20:17:54 1067 浏览量 回答数 1

问题

关于php中curl模拟post发送json并接收json问题

爵霸 2019-12-01 20:07:30 1804 浏览量 回答数 1

问题

JSON无法在FLUTTER中检索数据

云产品优惠 2019-12-01 22:05:17 20 浏览量 回答数 0

回答

调用php的 json_encode将json对象转为json格式字符串放入script中赋值给js变量,然后通过变量获取是否有一级,有就继续填充下一个select的option

小旋风柴进 2019-12-02 02:00:27 0 浏览量 回答数 0

问题

如何将JSON字符串转换为数组

保持可爱mmm 2020-02-07 23:06:09 1 浏览量 回答数 1

问题

在JSON_DATA_URL android studio中执行之前在php文件中传递变量

云产品优惠 2019-12-01 21:56:50 11 浏览量 回答数 0

问题

PHP数组序列化后数据无法反序列化问题

蛮大人123 2019-12-01 19:52:04 966 浏览量 回答数 1

问题

有关于 PHP数组序列化后,数据无法反序列化问题,

爵霸 2019-12-01 20:07:30 1010 浏览量 回答数 1

问题

如何使用mysql本地json函数生成嵌套的json对象??mysql

保持可爱mmm 2020-05-17 14:04:20 0 浏览量 回答数 1

回答

您有几种选择: 将其转换为JSON字符串,然后在PHP中解析(推荐) JS var json_arr = JSON.stringify(arr); 的PHP $arr = json_decode($_POST['arr']); 或使用@Curios的方法 通过发送数组FormData。 不建议使用:序列化数据,然后在PHP中反序列化 JS // Use <#> or any other delimiter you want var serial_arr = arr.join("<#>"); 的PHP $arr = explode("<#>", $_POST['arr']);

保持可爱mmm 2020-02-08 11:57:34 0 浏览量 回答数 0

回答

浏览器端提交数据的时候一般都是通过GET或者POST方式来传输,比如/post.php?action=edit&id=1024,拿PHP来说,就是直接用$_GET和$_POST等超全局变量在任何地方访问这些用户输出的参数,比如取参数action的值,$_GET['action'].如果你是用PHP写CGI程序,那么你就需要自己获取这些参数,大概就是先URL解码,然后按&分割,再按=分割,获取参数的名和值. <?php $tmp = explode('&', urldecode('action=edit&id=1024')); $get = array(); foreach($tmp as $v) { $tmp2 = explode('=', $v); foreach($tmp2 as $v2) { $get[$tmp2[0]] = $tmp2[1]; } } print_r($get); <form accept-charset="utf-8" action="info.php" method="GET"> <input type="checkbox" name="os[]" value="Windows" />Windows <input type="checkbox" name="os[]" value="Ubuntu" />Ubuntu <input type="checkbox" name="os[]" value="Mac" />Mac <input type="submit" name="submit" value="提交" /> </form> 上面的表单,如果勾选了3个复选框,那么提交后就对应这样的GET请求(一个数组): info.php?os[]=Windows&os[]=Ubuntu&os[]=Mac&submit=提交 $_GET['os']: Array ( [0] => Windows [1] => Ubuntu [2] => Mac ) 如果你用POST方式的话可以在Firebug之类的工具的网络里看到这个信息,而不像GET显示在URL,并记录到Web服务器的日志里. 一般是浏览器端通过AJAX访问服务器端获取数据时,服务器端才返回JSON数据,而不是浏览器端向服务器端提交JSON数据.JSON是JS里的一种数据结构,就像数组至于PHP,而PHP可以通过json_encode/json_decode在数组和JSON之间转换,PHP里的数组不区分数字数组和字典(键值对/哈希表),PHP可以用数组保存从数据库中查出的结果集,经过数组处理后json_encode成JSON串,然后返回给浏览器.浏览器端可以用jQuery.parseJSON(data)或JSON.parse(data)或eval('(' + data + ')')把返回的JSON串转成JS对象进行操作.

爵霸 2019-12-02 01:57:50 0 浏览量 回答数 0

问题

从json对象中获得正确的输出值

杨冬芳 2019-12-01 20:16:16 935 浏览量 回答数 1

问题

关于使用mySql返回的值调用

爵霸 2019-12-01 20:26:25 951 浏览量 回答数 1

问题

钉钉机器人webhook 官方demo改良版,不断采坑的试试吧

wisdomwei 2019-12-01 20:59:56 2303 浏览量 回答数 1

问题

PHP这种写法有什么优点?

idevcloud 2019-12-01 19:50:51 950 浏览量 回答数 1

问题

有关于 PHP处理JSON

爵霸 2019-12-01 20:07:07 952 浏览量 回答数 1
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 企业信息查询 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 2020阿里巴巴研发效能峰会 企业建站模板 云效成长地图 高端建站