为了账号安全,请及时绑定邮箱和手机立即绑定

各位小伙伴,发个通告,关于xml方式封装通信数据方法中有个方法需要优化下,请知晓,代码如下:

public static function xmlToEncode($data) {
 
    $xml = "";
    foreach($data as $key => $value) {
        $attr = "";
        if(is_numeric($key)) {
            $attr = " id='{$key}'";
            $key = "item";
        }
        $xml .= "<{$key}{$attr}>";
        $xml .= is_array($value) ? self::xmlToEncode($value) : $value;
        $xml .= "</{$key}>\n";
    }
    return $xml;
}


正在回答

9 回答

謝謝老師 

0 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//590c48fe0001caae02080053.jpg

老师您好,请问这个item和id 为什么可以直接用不用说明从哪来的?

0 回复 有任何疑惑可以回复我~

if(is_numeric($key)) {

$attr = " id='{$key}'";

$key = "item";

}

老师 请问这样写的作用是什么呢  有点看不懂

0 回复 有任何疑惑可以回复我~
#1

无知肤浅幼稚可笑之极

当键值是数字时,用item替代,然后在item后原来的键值赋值在id后,
2017-04-07 回复 有任何疑惑可以回复我~

没看出来哪改了,老师,$attr = "";的位置

0 回复 有任何疑惑可以回复我~

建议不管是接收的数据还是程序内部的数据都trim一下,严谨又省时。

0 回复 有任何疑惑可以回复我~
#1

爱国者

不错啊
2016-08-02 回复 有任何疑惑可以回复我~

老师最近在学你的课程,我有点小疑惑,为什么要Response类的方法写成静态方法呢,这是有什么原因吗

0 回复 有任何疑惑可以回复我~
#1

蜗牛论

便于类直接调用啊
2015-11-06 回复 有任何疑惑可以回复我~
#2

小白爱学习ing

如果不写静态的话,你每次想调用都要new一个对象,然后用对象调用,但是对象是要消耗资源的
2017-05-14 回复 有任何疑惑可以回复我~

嗯嗯嗯

1 回复 有任何疑惑可以回复我~

刚刚看的时候就觉得不对。正要说呢。发现这里已经更正。哈哈

1 回复 有任何疑惑可以回复我~
#1

singwa 提问者

嗯。是的
2014-12-10 回复 有任何疑惑可以回复我~

好的,已改

1 回复 有任何疑惑可以回复我~
#1

singwa 提问者

嗯。不错,
2014-09-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
PHP开发APP接口
  • 参与学习       79185    人
  • 解答问题       599    个

APP通信接口技术,不得不掌握的法宝,学完之后你会受益良多

进入课程
意见反馈 帮助中心 APP下载
官方微信