PHP:无效字符串不允许我正确比较

PHP:无效字符串不允许我正确比较,php,imap,Php,Imap,由于某种原因,数组中产生了一个非常奇怪的字符串,我不知道如何处理它。。。我获取字符串并用以下代码输出: $server = '{imap.gmail.com:993/ssl}'; $connection = imap_open($server, 'myuser', 'mypass'); $count = imap_num_msg($connection); $header = imap_headerinfo($connection, $i); for(

由于某种原因,数组中产生了一个非常奇怪的字符串,我不知道如何处理它。。。我获取字符串并用以下代码输出:

    $server = '{imap.gmail.com:993/ssl}';
    $connection = imap_open($server, 'myuser', 'mypass');
    $count = imap_num_msg($connection); 
    $header = imap_headerinfo($connection, $i); 
    for($i = 1; $i <= $count; $i++) { 
        $from = $header['fromaddress'];
        var_dump($from);
   }
这怎么可能?有没有办法把它转换成正确的字符串(我是说,长度正确?)

这会影响我的代码,因为现在:

echo ('Support Testing1' == $from) 
给我虚假,当它应该是真实的。有什么想法吗?谢谢

更新:修剪也不起作用。

尝试:

$from = trim($header['fromaddress']));

两端可能有隐藏的空白字符。

错误的长度可能是编码问题

尝试:


我最好的猜测是,
$header['fromaddress']
实际上类似于

"Support Testing1" <blah@example.com>
“支持测试1”
您在var转储中看不到电子邮件地址,因为浏览器将其视为HTML标记

如果是这样,那么您需要删除
,可能还需要删除双引号


您可以尝试查看源HTML以进行确认。

是否修剪($header['fromaddress'])==$header['fromaddress']]?能否从代码中提供更多信息?此问题的背景是什么?看起来它与php邮件脚本有关?trim不起作用。。。我用更多信息更新了代码!谢谢“发件人”不应该是电子邮件地址吗?它看起来是一个电子邮件别名。
var_dump( utf8_decode( $header['fromaddress'] ) );
"Support Testing1" <blah@example.com>