$domain_parts = explode('.', preg_replace('/\s+/', '', $_GET['domain']));
$sld = $domain_parts[0];
1 行目と 2 行目の機能を 1 行のコードにまとめたいと考えています。
$_GET['domain']
提供するものの例はgoogle.com
これを1行で行う最もクリーンな方法は何ですか。
You can try with list
like
list($domain_parts) = explode('.', preg_replace('/\s+/', '', $_GET['domain']));
It will directly returns the $domain_parts[0]
.You can also try with strtok
like
echo strtok(preg_replace('/\s+/', '', $_GET['domain']), '.');
See this STRTOK
このように正規表現なしで行うこともできます
$sld = str_replace(' ','',substr($_GET['domain'],0,strpos($_GET['domain'],'.')));
list($domain_parts) = explode('.', preg_replace('/\s+/', '', $_GET['domain']));
$domain_parts
配列の最初の要素が含まれます。
次のように 2 番目の要素を取得できます。
list(,$domain_parts) = explode('.', preg_replace('/\s+/', '', $_GET['domain']));
詳細については、 list()を参照してください。
または、これを行うことができます:-
$domain_parts = explode('.', preg_replace('/\s+/', '', $_GET['domain']))[0];
PHP >= 5.4 を使用している場合