From 63c665cdc9633ef9b93ccf74cea5fe64bbeee3f3 Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Thu, 19 Apr 2018 19:16:27 -0600 Subject: [PATCH] Add Nickname Lexer --- app/Util/Lexer/Nickname.php | 38 +++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 app/Util/Lexer/Nickname.php diff --git a/app/Util/Lexer/Nickname.php b/app/Util/Lexer/Nickname.php new file mode 100644 index 000000000..631a1fc8d --- /dev/null +++ b/app/Util/Lexer/Nickname.php @@ -0,0 +1,38 @@ + $parsed['host'], 'username' => $username]; + } + $parts = explode('@', $url); + $username = null; + $domain = null; + + foreach ($parts as $part) { + + // skip empty array slices + if(empty($part)) { + continue; + } + + // if slice contains . assume its a domain + if(str_contains($part, '.')) { + $domain = filter_var($part, FILTER_VALIDATE_URL) ? + parse_url($part, PHP_URL_HOST) : + $part; + } else { + $username = $part; + } + + } + return ['domain' => $domain, 'username' => $username]; + } + +} \ No newline at end of file