strtok()
?で分割。
explode()
?で区切って配列にしてから取り出す。
preg_replace()
正規表現で?以降を空文字で置換削除。
parse_url()
URLを一旦パースしてからパラメータ以外を結合。
preg_match()
正規表現で?より前の部分を取り出す。
速度ランキング
上記のコードを100万回ループさせた場合の処理時間です。
1位 | strtok() | 2.498sec |
---|---|---|
2位 | explode() | 2.692sec |
3位 | preg_replace() | 3.094sec |
4位 | parse_url() | 3.442sec |
5位 | preg_match() | 3.716sec |
まとめ
strtok()が短く書ける上に速度も速いのでオススメ。
複数のパラメータから一部を削除するならparse_url()を使うと良さそうです。