Example #1
0
 /**
  * Parse a JSON formatted string and convert it into an object.
  *
  * If the string is not in JSON format, this method will attempt to parse it as INI format.
  *
  * @param   string  $data     JSON formatted string to convert.
  * @param   array   $options  Options used by the formatter.
  * @return  object   Data object.
  */
 public function stringToObject($data, $options = array('processSections' => false))
 {
     // Fix legacy API.
     if (is_bool($options)) {
         $options = array('processSections' => $options);
         // Deprecation warning.
         \JLog::add('\\Components\\Publications\\Models\\Format\\JSON::stringToObject() second argument should not be a boolean.', \JLog::WARNING, 'deprecated');
     }
     $data = trim($data);
     if (substr($data, 0, 1) != '{' && substr($data, -1, 1) != '}') {
         $ini = Base::getInstance('INI');
         $obj = $ini->stringToObject($data, $options);
     } else {
         $obj = json_decode($data);
     }
     return $obj;
 }
Example #2
0
 /**
  * Get a namespace in a given string format
  *
  * @param   string  $format   Format to return the string in
  * @param   mixed   $options  Parameters used by the formatter, see formatters for more info
  * @return  string   Namespace in string format
  */
 public function toString($format = 'JSON', $options = array())
 {
     // Return a namespace in a given format
     $handler = Format::getInstance($format);
     return $handler->objectToString($this->data, $options);
 }