数组到字符串转换

时间:2014-10-15 07:38:15

标签: php arrays string preg-match-all

这段代码的问题是什么? 我不明白。 这是错误代码:

  

注意:数组转换为字符串   第12行阵列上的C:\ xampp \ htdocs \ stage \ ripper.php   块引用

     

注意:C:\ xampp \ htdocs \ stage \ ripper.php中的数组到字符串转换   在第13行数组

<?php
header('Content-Type: text/html; charset=utf-8');

$url = "http://www.asaphshop.nl/epages/asaphnl.sf/nl_NL/ObjectPath=/Shops/asaphnl/Products/80203122";
$htmlcode = file_get_contents($url);
$pattern = "/itemprop=\"description\"\>(.*)\<\/div\>(.*)\<li\>Taal:(.*)\<\/li\>(.*)\>(.*)\<\/div\>\<li\>(.*)\data-src-l\<\/li\>/sU";
preg_match_all($pattern, $htmlcode, $matches);
Print_r ($matches);
$description =($matches[1]);
$language = ($matches[3]);
echo $description;
echo $language
?>

2 个答案:

答案 0 :(得分:4)

当您使用preg_match_all时,$matches是一个二维数组。因此$matches[1]$matches[3]都是数组。 echo仅适用于数字或字符串,因此当您尝试回显数组时会收到警告。如果您想查看其中的内容,请使用print_r()var_dump()

print_r($description);
print_r($language);

答案 1 :(得分:0)

似乎$ language是一个数组。因此,要打印数组,可以循环遍历并回显每个元素,也可以使用print_r。 除此之外,您可以使用var_dump($ language),它会告诉您它是什么类型,内容是什么。或者,您也可以使用json_encode($ language)。

希望它会有所帮助:)