关于php数组转对象,打印结果的时候出现的乱码
<?php
// header("Content_type: text/html; charset=UTF-8");
class obj{
public $intpub=123;
public $pub='public';
protected $pro='protected';
private $pri='private';
const con='const';
public function thefunc(){
return 'func';
}
}
$obj=new obj();
var_dump((array)$obj);//
代码是上面这样的
结果成这样的,我知道?的位置应该是'*'这个前缀,但是怎么样能让它正常显示呢
header头:
浏览器编码:
后来用Print_r试了下 可以正常使用:
Array ( [intpub] => 123 [pub] => public [*pro] => protected [objpri] => private )
但是这是为什么吗呢?求指导
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
vardump正常打印出来的都是public,出现乱码的是那些非公共的。
这问题我没遇过,毕竟通过实际化类直接打印属性是没什么必要的,完全可以放进方法打印出来嘛。
btw,编程以结果为导向吧,这类比较奇怪的问题可以记录后,以后再看或者问高手。