Por que readfile () está agindo de forma estranha na leitura de um arquivo php, mas funcionando bem no arquivo de texto

Código em index.php

<?php
echo readfile('hello.php');
?>

código em hello.php

<?php 
echo "hello this is a php file";
?>

A saída que estou recebendo é47 mas quando adiciono uma linha antes da string em hello.phpecho "<br/> hello this is a php file"; Estou obtendo saídahello this is a php file"; ?>52

E ao remover a tag php de fechamento na saída hello.php em index.php é

hello this is a php file"; 50

Mas não existe esse comportamento de leitura de um arquivo de texto. Por que a saída do index.php sendo três maneiras diferentes no caso de ler um arquivo php?

questionAnswers(2)

yourAnswerToTheQuestion