Auth_OpenID_Mapping::items PHP Method

items() public method

Returns an array of (key, value) pairs in the mapping.
public items ( )
    function items()
    {
        $temp = array();
        for ($i = 0; $i < count($this->keys); $i++) {
            $temp[] = array($this->keys[$i], $this->values[$i]);
        }
        return $temp;
    }

Usage Example

Example #1
0
 /**
  * @access private
  */
 function _fromOpenIDArgs($openid_args)
 {
     global $Auth_OpenID_registered_aliases;
     // Takes an Auth_OpenID_Mapping instance OR an array.
     if (!Auth_OpenID_Mapping::isA($openid_args)) {
         $openid_args = new Auth_OpenID_Mapping($openid_args);
     }
     $ns_args = array();
     // Resolve namespaces
     foreach ($openid_args->items() as $pair) {
         list($rest, $value) = $pair;
         $parts = explode('.', $rest, 2);
         if (count($parts) == 2) {
             list($ns_alias, $ns_key) = $parts;
         } else {
             $ns_alias = Auth_OpenID_NULL_NAMESPACE;
             $ns_key = $rest;
         }
         if ($ns_alias == 'ns') {
             if ($this->namespaces->addAlias($value, $ns_key) === null) {
                 return false;
             }
         } elseif ($ns_alias == Auth_OpenID_NULL_NAMESPACE && $ns_key == 'ns') {
             // null namespace
             if ($this->setOpenIDNamespace($value, false) === false) {
                 return false;
             }
         } else {
             $ns_args[] = array($ns_alias, $ns_key, $value);
         }
     }
     if (!$this->getOpenIDNamespace()) {
         if ($this->setOpenIDNamespace(Auth_OpenID_OPENID1_NS, true) === false) {
             return false;
         }
     }
     // Actually put the pairs into the appropriate namespaces
     foreach ($ns_args as $triple) {
         list($ns_alias, $ns_key, $value) = $triple;
         $ns_uri = $this->namespaces->getNamespaceURI($ns_alias);
         if ($ns_uri === null) {
             $ns_uri = $this->_getDefaultNamespace($ns_alias);
             if ($ns_uri === null) {
                 $ns_uri = Auth_OpenID_OPENID_NS;
                 $ns_key = sprintf('%s.%s', $ns_alias, $ns_key);
             } else {
                 $this->namespaces->addAlias($ns_uri, $ns_alias, true);
             }
         }
         $this->setArg($ns_uri, $ns_key, $value);
     }
     return true;
 }
All Usage Examples Of Auth_OpenID_Mapping::items