$data = '| years_active = 1960–70 | label = ';
preg_match('active(.*?)label', $data, $matches);
echo print_r($matches);
我原以为这会输出一个包含值的数组:'= 1960- 70 | ',但我得到了输出:1。
理想情况下,我试图提取:'1960-70'。
我哪里错了?感谢。
答案 0 :(得分:0)
您回显print_r()的结果,“如果您想捕获print_r()的输出,请使用return参数。当此参数设置为TRUE时,print_r()将返回信息而不是打印它“。 http://php.net/manual/en/function.print-r.php
你还需要预先定义$ matches,因为preg_match将ref引用到那个数组并且你破坏了正则表达式:DateTime.ToUniversalTime()
'/active(.*)label/'