Baixe um arquivo renomeado com PHP

Estou criando um script PHP que fará o download de um arquivo com um nome e uma versão. Os arquivos serão armazenados no servidor assim:

/dl/Project1/1.0.txt
/dl/Project1/1.1.txt
/dl/Project2/2.3.jar
/dl/Project2/2.3.1.jar

E os caminhos para recuperar esses arquivos ficariam assim:

download.php?name=Project1&type=txt&version=1.0
download.php?name=Project1&type=txt&version=1.1
download.php?name=Project2&type=jar&version=2.3
download.php?name=Project2&type=jar&version=2.3.1

O problema surge ao baixar os arquivos. Neste exemplo, quero que os dois primeiros arquivos sejam baixados como Project1.txt e que os dois últimos baixem como Project2.jar. Como posso renomeá-los temporariamente para permitir que isso funcione?

questionAnswers(6)

yourAnswerToTheQuestion