Devi creare il ciclo per le parole, non per il dizionario.
E poi ti consiglio di usare un foreach.
Codice PHP:
<?php
    $dizio 
= array ('albero' => 'tree',
                         
'barca' => 'boat',
                         
'casa' => 'home',
                         
'dare' => 'give',
                         
'essere' => 'be',
                         
'fare' => 'do',
                         
'giocare' => 'play',
                         
'io' => 'I',
                         
'avere' => 'have',
                         
'domani' => 'tomorrow');
    
$input 'io giocare casa domani';
    
$testo explode(' ',$input);
        
$output '';
        foreach(
$testo as $parola){
            
$output .= ($k=array_search($parola$dizio))!==false?$dizio[$k]:$parola;
        }
?>
Ora dovrebbe andare.