]> git.mxchange.org Git - friendica.git/blobdiff - src/Util/Network.php
bump version 2023.12
[friendica.git] / src / Util / Network.php
index 495510189f1a2a849f61d69ce9aacbc283750b3d..b2f472ba7738e4ffbbde54f10ab881bbb0f2cf7a 100644 (file)
@@ -658,4 +658,24 @@ class Network
                $scheme = parse_url($url, PHP_URL_SCHEME);
                return !empty($scheme) && in_array($scheme, ['http', 'https']) && parse_url($url, PHP_URL_HOST);
        }
+
+       /**
+        * Creates an Uri object out of a given Uri string
+        *
+        * @param string|null $uri
+        * @return UriInterface|null
+        */
+       public static function createUriFromString(string $uri = null): ?UriInterface
+       {
+               if (empty($uri)) {
+                       return null;
+               }
+
+               try {
+                       return new Uri($uri);
+               } catch (\Exception $e) {
+                       Logger::debug('Invalid URI', ['code' => $e->getCode(), 'message' => $e->getMessage(), 'uri' => $uri]);
+                       return null;
+               }
+       }
 }