たとえば、単純なオブジェクトキャッシングを実装する場合、どちらの方法が高速ですか?
1. return isset($cache[$cls]) ? $cache[$cls] : $cache[$cls] = new $cls;
2. return @$cache[$cls] ?: $cache[$cls] = new $cls;
特に警告/通知が実際に発行されて抑制されている場合は、どこか@
で実行するのにかなりの時間がかかります(そしてなぜだろうか)。isset()
一方、追加のハッシュルックアップを意味します。では、どちらが優れているのか、そしてその理由は何ですか?
開発サーバーと本番サーバーの両方で、E_NOTICEをグローバルに保持したいと思います。