1 2 3 4 5 6 7 8 9 10 | <?xml version="1.0" encoding="UTF-8"?> <episodes> <episode title='Simpsons Roasting on an Open Fire' episode='1' season='1' aired='17 December 1989'> Christmas seems doomed for the Simpson family when Homer receives no Christmas Bonus. Homer becomes a mall Santa Claus, hoping to make money and bring Marge, Bart, Lisa, and baby Maggie, a happy holiday. </episode> ... </episodes> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <?php class Simpsons { private $episodes = array(); public function __construct() { $xmlDoc = new DOMDocument(); $xmlDoc->load("simpsons.xml"); foreach ($xmlDoc->documentElement->childNodes as $episode) { if ( $episode->nodeType == 1 ) { $this->episodes []= array( 'episode' => $episode->getAttribute( 'episode' ), 'season' => $episode->getAttribute( 'season' ), 'title' => $episode->getAttribute( 'title' ), 'aired' => $episode->getAttribute( 'aired' ), 'summary' => $episode->nodeValue ); } } } public function find( $q ) { $found = array(); $re = "/".$q."/i"; foreach( $this->episodes as $episode ) { if ( preg_match( $re, $episode['summary'] ) || preg_match( $re, $episode['title'] ) ) { $found []= $episode; } } return $found; } } ?> |
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |