=') ? json_decode($json, true, $depth, $flags) : json_decode($json, true, $depth) ); return self::jsonDataToValue($publicArray); } /** * Unserialize json on passed object * * @param string $json json string * @param object|string $obj object to fill or class name * @param integer $depth json_decode depth * @param integer $flags json_decode flags * * @link https://www.php.net/manual/en/function.json-decode.php * * @return object */ public static function unserializeToObj($json, $obj, $depth = 512, $flags = 0) { if (is_object($obj)) { } elseif (is_string($obj) && class_exists($obj)) { $obj = self::getObjFromClass($obj); } else { throw new Exception('invalid obj param'); } // phpcs:ignore PHPCompatibility.FunctionUse.NewFunctionParameters.json_decode_optionsFound $value = (version_compare(PHP_VERSION, '5.4', '>=') ? json_decode($json, true, $depth, $flags) : json_decode($json, true, $depth) ); if (!is_array($value)) { throw new Exception('json value isn\'t an array VALUE: ' . SnapLog::v2str($value)); } return self::fillObjFromValue($value, $obj); } }