Hola:
Con el método de crear el enlace con javascript sería más o menos:
var enlace = "destino.php?foto=gato.jpg&texto=" + escape("<?php echo $varPHP; ?>");
Creo que PHP tiene una función similar, pero no suelo usarla y podría decírtelo mal, pero se trata de url_encode...
me parece que sería:
var enlace = "<?php echo url_encode('destino.php?foto=gato.jpg&texto=$t exto'); ?>";
Pero sobre esa función sería mejor informarte en php...
Saludos