我做了一些研究。我发现您可以序列化然后反序列化以获取字符串......但我想要一个更好的解决方案。
我得到了 IMAP pear 模块 ( function imap_getmailboxes
) 返回的对象数组。
public function GetMailBoxes(){
$List = imap_getmailboxes($this->Link, '{'.$this->Server.':'.$this->Port.'}', '*');
$Data = array();
if(is_array($List)){
foreach($List as $Key => $Value){
$Value = unserialize(serialize($Value));
$In = strpos($Value->name, '{');
$Out = strpos($Value->name, '}');
$Part = substr($Value, $Out);
$Value->real_name = explode($Value->delimiter, imap_utf7_decode($Part));
$Value->real_name = (isset($Value->real_name[1]) ? $Value->real_name[1] : null);
$Data[$Key] = $Value;
}
}
return $Data;
}
这里的问题是 strpos 告诉我这个Warning: substr() expects parameter 1 to be string, object given in /home/david/domains/davidbelanger.net/public_html/panel/drivers/mail.php on line 178
。
如何将对象转换为字符串?任何想法,以前从未这样做过。
谢谢。