Warning: Illegal offset type in /email_HANDLER.php on line 85
$final_message = str_replace($from, $to, $final_message);
preg_match_all('/<img[^>]+>/i',$final_message, $result);
$img = array();
foreach($result as $img_tag)
{
preg_match_all("/(alt|title|src)=('[^']*')/i",(string)$img_tag, $img[$img_tag]); //LINE 85
}
任何?我要把头发撕掉了......
这是我的$ img_tag
的var_dumparray(1) {
[0]=>
string(97) "<img alt='' src='http://pete1.netsos.com/site/files/newsletter/banner.jpg' align='' border='0px'>"
答案 0 :(得分:34)
假设$img_tag
是某种类型的对象,而不是正确的字符串,请将$img_tag
强制转换为[]
preg_match_all("/(alt|title|src)=('[^']*')/i",(string)$img_tag, $img[(string)$img_tag]);
//------------------------------------------------------------------^^^^^^^^^
某些对象类型,例如SimpleXMLElement
,会通过magic method __toString()
将字符串表示形式返回给print/echo
,但不能作为常规字符串。尝试将它们用作数组键将产生illegal offset type
错误,除非您通过(string)$obj
将它们转换为正确的字符串。
答案 1 :(得分:9)
答案 2 :(得分:1)
$result
是二维数组。因此,$img_tag
应该是一个数组。
但只有整数和字符串可以用作偏移量
答案 3 :(得分:-1)
foreach( $result[0] as $img_tag)
它有效