私はwww.host.com
のような文字列を持っていて、それをちょうどhost.com
にするために、この場合は(この場合はwww.
)最初から削除する必要があります。これらの始まりの配列があります(m.
、wap.
など)。どのように効果的かつ迅速にそれを行うには?文字列を最初から削除する最も効果的で最速の方法は何ですか? (PHPの最適化)
現在、私はこのコードを使用していますが、私はより良い/より高速/きれいな方法があるはずだと思う:
<?php
function _without_start($val, $start)
{
if(_starts($val, $start))
{
$len = mb_strlen($start);
$val = mb_substr($val, $len);
}
return $val;
}
function _starts($str, $needle)
{
return (mb_substr($str, 0, mb_strlen($needle)) === $needle);
}
/********************************************/
$host = 'www.host.com';
$remove_from_beginning = array('www.', 'wap.', 'admin.');
foreach($remove_from_beginning as $start)
{
$host = _without_start($host, $start);
}
var_dump($host);
'explode'と' in_array'、ない正規表現を使用します。 –