PHPを使用してドメインから特定のものを削除する最善の方法を知りました。例えばPHPドメイン名拡張子を文字列から削除する
:
"http://mydomain.com/" "MYDOMAIN"
又は
"http://mydomain.coに。 uk/ "を" mydomain "
私は、次のようなものを削除するための機能を探しています:
"http://"、 ".com"、 ".co.uk"、 ".net "" .ORG」、 "/" など、事前に
感謝:)
PHPを使用してドメインから特定のものを削除する最善の方法を知りました。例えばPHPドメイン名拡張子を文字列から削除する
:
"http://mydomain.com/" "MYDOMAIN"
又は
"http://mydomain.coに。 uk/ "を" mydomain "
私は、次のようなものを削除するための機能を探しています:
"http://"、 ".com"、 ".co.uk"、 ".net "" .ORG」、 "/" など、事前に
感謝:)
URLを使用parse_url
のホスト部分を取得するには、次の
$host = parse_url($url, PHP_URL_HOST);
そして残りのためmy answer to Remove domain extensionを参照。
あなたは、文字列を使用することができます置き換えますか?
str_replace('http://', '');
これは、文字列から 'http://'を削除します。あなたが最初にやらなければならないことは、ページの現在のURLを取得し、それをあなたが望むものに置き換えることです。
「http://」と「.com」や「.net」などの任意のドメイン拡張子を削除したいと考えています。ありがとう:) –
parse_url()とstr_ *関数を組み合わせることはできますが、結果からドメインドメイン(.com、.netなど)を削除する必要がある場合は、正しい結果が得られません。
例えば:
parse_url('http://mydomain.co.uk/', PHP_URL_HOST); // will return 'mydomain.co.uk'
あなたがハンドルこのような状況のためPublic Suffix Listを使用するライブラリを使用する必要があります。私はTLDExtractをお勧めします。 ($のVAR =「http://domain.com/」私はドメインを格納する文字列/変数を使用することがあります[簡単なメモとして]
$extract = new LayerShifter\TLDExtract\Extract();
$result = $extract->parse('mydomain.co.uk');
$result->getHostname(); // will return 'mydomain'
$result->getSuffix(); // will return 'co.uk'
$result->getFullHost(); // will return 'mydomain.co.uk'
$result->getRegistrableDomain(); // will return 'mydomain.co.uk'
:ここ
は、サンプルコードです;)。 –
好奇心の外に、なぜあなたはそれをやろうとしていますか? – Mikk
私が取り組んでいる新しいプロジェクトのデータベースに情報を追加するだけです。私がプロファイルページなどでデータを印刷するとき、私は間違ったドメイン拡張をしたくないので、私はそれらを自分でフレーズしたい。 –