diff --git a/src/CSPBuilder.php b/src/CSPBuilder.php index dc4b39f..a7d128d 100644 --- a/src/CSPBuilder.php +++ b/src/CSPBuilder.php @@ -222,6 +222,23 @@ public static function fromFile($filename = '') $array = \json_decode($json, true); return new CSPBuilder($array); } + + /** + * Factory method - create a new CSPBuilder object from a JSON data + * + * @param string $data + * @return CSPBuilder + */ + public static function fromData($data = '') + { + $array = \json_decode($data, true); + + if(!is_array($array)) { + throw new \Exception('Is not array valid'); + } + + return new CSPBuilder($array); + } /** * Get the formatted CSP header