Sistema gerenciador de Download

Estou com uma pequena dificuldade se puder me ajudar, eu adicionei no menu de um sistema uma tela chamada Arquivos onde o adm faz o upload de um documento e escolhe o usuário que deve ter acesso a este documento para que o mesmo faça o Download. Criei uma nova tabela no banco com o nome files com os seguintes atributos: id, arquivo, date e user_id até aqui td certo. O problema é que qualquer usuário que faça o login tem acesso ao documento para fazer o Download e minha ideia é que somente o usuário escolhido pelo adm no momento do cadastro consiga visualizar. Qual a forma correta de se fazer isso?
Estou desenvolvendo em PHP OO o meu código está desta forma.

<table class="table">
    <thead>
        <tr>
          <th>ID</th>
          <th>Arquivo</th>
          <th>Data</th>
          <th>Ações</th>
        </tr>
    </thead>
    <tbody>
        <?php 
          if ($view_files) : 
            foreach ($view_files as $file) :
        ?>
        <tr> 
          <td><?php echo $file->id; ?></td>
          <td><?php echo $file->arquivo; ?></td>
          <td><?php echo $file->date; ?><td>
          <td><a href="arquivos/uploads/files/<?php echo $file->arquivo ?>">Download</a></td>
        </tr>      
    <?php 
        endforeach;
      endif;
    ?>
    </tbody>
  </table>

Tenha em mente para conseguir isso, o id do usuário logado deve estar na session para comparação:

<?php if ($_SESSION['id_logado'] == $file->user_id): ?>
    <td><a href="arquivos/uploads/files/<?php echo $file->arquivo ?>">Download</a></td>
<?php endif; ?>

Essa é uma maneira “bruta” de validação, não sei se está usando algum framework, etc.

Outro meio de validar, é resgatar o id da session na página responsável pelo download.

Estou usando o framework HXPHP e utilizando PHP-ActiveRecord nesse sistema.

Vou tentar implementar essa sua dica.

LostSoldier consegui resolver o problema com da seguinte forma e valeu pela ajudou a clarear a idéia

if($view_user->id == $file->user_id) :