zoukankan      html  css  js  c++  java
  • PHP convet class to json data

    /*********************************************************************
     *              PHP convet class to json data
     * 说明:
     *     突然想使用class自动转换为json数据,这样的代码可扩展性会好一点,
     * 只需要修改class的属性就能够达到最终json数据输出,不过有遇到class中
     * 初始化class变量需要在构造函数中初始化的的问题。
     *
     *                                   2017-8-11 深圳 龙华樟坑村 曾剑锋
     ********************************************************************/
    
    
    一、参考文档:
        1. getting Parse error: syntax error, unexpected T_NEW [closed]
            https://stackoverflow.com/questions/15806981/getting-parse-error-syntax-error-unexpected-t-new
    
    二、测试代码:
        <?php
            class Uart {
                public $port = "/dev/ttyO0";
                public $value = "OK";
            }
    
            class Context {
                public $uart = new Uart();;
                public $version = "v0.0.1";
            }
    
            $context = new Context;
    
            $context_json = json_encode($context);
            echo $context_json
        ?>
    
    三、报错内容:
        Parse error: syntax error, unexpected 'new' (T_NEW) in /usr/share/web/time.php on line 8
    
    四、最终代码:
        <?php
            class Uart {
                public $port = "/dev/ttyO0";
                public $value = "OK";
            }
    
            class Context {
                public $uart;
                public $version = "v0.0.1";
    
                public function __construct() {
                    $this->uart = new Uart();
                }
            }
    
            $context = new Context;
    
            $context_json = json_encode($context);
            echo $context_json
        ?>
    
    五、输出结果:
        {"uart":{"port":"/dev/ttyO0","value":"OK"},"version":"v0.0.1"}
    
    六、原因:
        you must do initialize new objects in the __construct function;
  • 相关阅读:
    K-means聚类算法
    实现计算出用户间的共同好友和二度好友
    Mysql和Hive实现列转行,类似reduceByKey操作
    Flink两阶段提交概述
    一些推荐算法的面试题
    收藏推荐算法-机器学习相关博客文章
    Notepad++将多行数据合并成一行
    布隆过滤器
    二叉树问题
    海量数据常见面试问题
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/7344008.html
Copyright © 2011-2022 走看看