chamando a function javascript da php

Estou tentando chamar uma function javascript do php. De acordo com todos os exemplos, observei o seguinte deve funcionar, mas não. Por que não?

<?php echo "function test"; echo ' run(); '; ?>   function run(){ alert("hello world"); }   

Seu html é inválido. Você está faltando algumas tags.

E você precisa chamar a function depois de ter sido declarada, assim

         

Neste caso, você pode colocar a execução antes da declaração do método, mas assim que você envolve a chamada do método dentro de outra etiqueta de script, a etiqueta do script deve ser após a declaração do método.

Experimente-se http://jsfiddle.net/qdwXv/

a function deve declarar antes do uso
deveria ser

    

Como outros sugeriram, a function precisa ser declarada primeiro. Mas, se você precisa repetir o JavaScript do PHP primeiro, você pode armazená-lo em uma variável PHP para ecoar mais tarde ou ter seu código aguardando que o dom termine de carregar primeiro …

 document.ready = function() { run() } 

Se você estiver usando jQuery ou outra estrutura, eles probalby têm uma maneira melhor de fazer isso … Em jQuery:

 $(function(){ run(); })