私は (高度に最適化されたバージョンの) CakePHP 2.3 を使用しており、私のアプリケーションは非常に遅いハードウェア (300MHz ARM) で実行されているため、可能な限り最適化を続けています。フレームワークの 1 つのメソッドは非常に頻繁に呼び出され、それほど高速ではありません (~0.5-1 ミリ秒) が、(出力を変更せずに) それを改善する方法を思いつきません - 合計で、合計時間の ~5% をこの方法:
function pluginSplit($name, $dotAppend = false, $plugin = null) {
if (strpos($name, '.') !== false) {
$parts = explode('.', $name, 2);
if ($dotAppend) {
$parts[0] .= '.';
}
return $parts;
}
return array($plugin, $name);
}
これをスピードアップする方法を知っている人はいますか?
プロファイラーによると、strpos はメソッド時間の約 5% を要し、約 1% 爆発します:
(プロファイリングは通常の実行よりも約 10 ~ 15 倍遅くなります --> 8.8ms は、プロファイラーなしでは約 0.5 ~ 1ms です)