<?php 
$file = '<div id=adsp_content_title_banner>测试</div>';
preg_match_all("/<div[^>]*id=adsp_content_title_banner[^>]*>(.*?)<\/div>/si",$file,$Topic); 
print_r($Topic[0]); 
echo($Topic[0]); print_r($file); 
echo($file);
?>上面程序返回的结果为什么是一下这个:
Array ( [0] => 
测试
) Array
测试
测试1、怎么多出来Array这个东西?
2、print_r 和 echo 的输出为什么不同?
3、最后大家都输出($file)的结果为什么相同?
刚接触PHP,请达人指点...

解决方案 »

  1.   

    print_r通常调试用,类似的还有var_dump可以输出结构数据,比如数组array,对象object……echo是个语句print print_r是函数
      

  2.   

    print_r可以递归输出数组echo 直接不可用输出数组而你所输出的是一个数组的元素(依然是数组)
      

  3.   

    那么我想输出$Topic的内容,应该如何?
      

  4.   

    echo($Topic[0][0]);