XML_XRD
[ class tree: XML_XRD ] [ index: XML_XRD ] [ all elements ]

Source for file Link.php

Documentation is available at Link.php

  1. <?php
  2. /**
  3.  * Part of XML_XRD
  4.  *
  5.  * PHP version 5
  6.  *
  7.  * @category XML
  8.  * @package  XML_XRD
  9.  * @author   Christian Weiske <cweiske@php.net>
  10.  * @license  http://www.gnu.org/copyleft/lesser.html LGPL
  11.  * @link     http://pear.php.net/package/XML_XRD
  12.  */
  13.  
  14. require_once 'XML/XRD/PropertyAccess.php';
  15.  
  16. /**
  17.  * Link element in a XRD file. Attribute access via object properties.
  18.  *
  19.  * Retrieving the title of a link is possible with the getTitle() convenience
  20.  * method.
  21.  *
  22.  * @category XML
  23.  * @package  XML_XRD
  24.  * @author   Christian Weiske <cweiske@php.net>
  25.  * @license  http://www.gnu.org/copyleft/lesser.html LGPL
  26.  * @version  Release: @package_version@
  27.  * @link     http://pear.php.net/package/XML_XRD
  28.  */
  29. {
  30.     /**
  31.      * Link relation
  32.      *
  33.      * @var string 
  34.      */
  35.     public $rel;
  36.  
  37.     /**
  38.      * Link type (MIME type)
  39.      *
  40.      * @var string 
  41.      */
  42.     public $type;
  43.  
  44.     /**
  45.      * Link URL
  46.      *
  47.      * @var string 
  48.      */
  49.     public $href;
  50.  
  51.     /**
  52.      * Link URL template
  53.      *
  54.      * @var string 
  55.      */
  56.     public $template;
  57.  
  58.     /**
  59.      * Array of key-value pairs: Key is the language, value the title
  60.      *
  61.      * @var array 
  62.      */
  63.     public $titles = array();
  64.  
  65.  
  66.  
  67.     /**
  68.      * Create a new instance and load data from the XML element
  69.      *
  70.      * @param string  $relOrXml   string with the relation name/URL
  71.      * @param string  $href       HREF value
  72.      * @param string  $type       Type value
  73.      * @param boolean $isTemplate When set to true, the $href is
  74.      *                             used as template
  75.      */
  76.     public function __construct(
  77.         $rel = null$href = null$type = null$isTemplate = false
  78.     {
  79.         $this->rel = $rel;
  80.         if ($isTemplate{
  81.             $this->template = $href;
  82.         else {
  83.             $this->href = $href;
  84.         }
  85.         $this->type = $type;
  86.     }
  87.  
  88.     /**
  89.      * Returns the title of the link in the given language.
  90.      * If the language is not available, the first title without the language
  91.      * is returned. If no such one exists, the first title is returned.
  92.      *
  93.      * @param string $lang 2-letter language name
  94.      *
  95.      * @return string|nullLink title
  96.      */
  97.     public function getTitle($lang = null)
  98.     {
  99.         if (count($this->titles== 0{
  100.             return null;
  101.         }
  102.  
  103.         if ($lang == null{
  104.             return reset($this->titles);
  105.         }
  106.  
  107.         if (isset($this->titles[$lang])) {
  108.             return $this->titles[$lang];
  109.         }
  110.         if (isset($this->titles[''])) {
  111.             return $this->titles[''];
  112.         }
  113.  
  114.         //return first
  115.         return reset($this->titles);
  116.     }
  117. }
  118.  
  119. ?>

Documentation generated on Fri, 26 Apr 2013 21:00:04 +0000 by phpDocumentor 1.4.3. PEAR Logo Copyright © PHP Group 2004.