php直接输出json格式,有一个误区,以为用echo json_encode($data);这样就是输出json数据了,没错这样输出文本是json格式文本而不是json数据,正确的写法是应该加一句:
成都创新互联成都企业网站建设服务,提供成都做网站、网站制作网站开发,网站定制,建网站,网站搭建,网站设计,响应式网站建设,网页设计师打造企业风格网站,提供周到的售前咨询和贴心的售后服务。欢迎咨询做网站需要多少钱:028-86922220
?php
header('Content-type:text/json');
//这句是重点,它告诉接收数据的对象此页面输出的是json数据;
$json={"name":"yovae","password":"12345"};
//虽然这行数据形式上是json格式,如果没有上面那句的话,它是不会被当做json格式的数据被处理的;
echo $json;
?
首先,把PHP数组中的数据写入JSON文件。
?php
// 生成一个PHP数组
$data = array();
$data['a'] = 'test';
$data['b'] = 'bbb';
// 把PHP数组转成JSON字符串
$json_string = json_encode($data);
// 写入文件
file_put_contents('test.json', $json_string);
?
然后,把JSON文件中的数据读取到PHP变量中。
?php
// 从文件中读取数据到PHP变量
$json_string = file_get_contents('test.json');
// 把JSON字符串转成PHP数组
$data = json_decode($json_string, true);
// 显示出来看看
var_dump($data);
?
你这哪是json,这是序列化,用unserialize反序列化就可以得到数组,然后就可以根据键名来取
如果你一定要这种字符串来取,那只能正则
preg_match('/"logo".*"(.*)"/U', $str, $match);
$match[1]就是你要的值