phpのflock()

$fp = fopen($path, 'r+');
flock($fp, LOCK_EX);
$aaa = file($path);         ←これ
// fwrite とかあれこれ
flock($fp, LOCK_UN);
fclose($fp);

微妙に邪悪な感じがしていたけど、flock() がブロックできるのは flock() だけだから問題はないのか。flock() に渡した $fp を使わずに、後処理で都合の良い file() で中身を読むというのは、なんとなく見た目が気持ち悪いけど。