Source of file Entry.php
Size: 2,598 Bytes - Last Modified: 2014-03-12T23:21:18+01:00
/home/theseer/Downloads/ZendFramework-2.3.0/library/Zend/Feed/Reader/Extension/Slash/Entry.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 | <?php /** * Zend Framework (http://framework.zend.com/) * * @link http://github.com/zendframework/zf2 for the canonical source repository * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ namespace Zend\Feed\Reader\Extension\Slash; use Zend\Feed\Reader\Extension; /** */ class Entry extends Extension\AbstractEntry { /** * Get the entry section * * @return string|null */ public function getSection() { return $this->getData('section'); } /** * Get the entry department * * @return string|null */ public function getDepartment() { return $this->getData('department'); } /** * Get the entry hit_parade * * @return array */ public function getHitParade() { $name = 'hit_parade'; if (isset($this->data[$name])) { return $this->data[$name]; } $stringParade = $this->getData($name); $hitParade = array(); if (!empty($stringParade)) { $stringParade = explode(',', $stringParade); foreach ($stringParade as $hit) $hitParade[] = $hit + 0; //cast to integer } $this->data[$name] = $hitParade; return $hitParade; } /** * Get the entry comments * * @return int */ public function getCommentCount() { $name = 'comments'; if (isset($this->data[$name])) { return $this->data[$name]; } $comments = $this->getData($name, 'string'); if (!$comments) { $this->data[$name] = null; return $this->data[$name]; } return $comments; } /** * Get the entry data specified by name * @param string $name * @param string $type * * @return mixed|null */ protected function getData($name, $type = 'string') { if (array_key_exists($name, $this->data)) { return $this->data[$name]; } $data = $this->xpath->evaluate($type . '(' . $this->getXpathPrefix() . '/slash10:' . $name . ')'); if (!$data) { $data = null; } $this->data[$name] = $data; return $data; } /** * Register Slash namespaces * * @return void */ protected function registerNamespaces() { $this->xpath->registerNamespace('slash10', 'http://purl.org/rss/1.0/modules/slash/'); } } |