phpでjsファイルを動的に生成しよう
javascriptとphpの間で変数を受け渡すのは厄介ですね。htmlだけでなくjsもphpで生成してしまいましょう。拡張子を".js"ではなくて".php"にすれば良いのです。
呼び出し側
index.html
<script src="javascript.php"></script>
<script>
console.log(foo+jsfunction(2));
</script>
呼び出される側
headerを出力してしまえば、あとはjavascriptの世界です。
javascript.php
<?php
header("Content-type: text/javascript;");
print "var foo=jsfunction(3);\n";
$n=10;
?>
function jsfunction(bar)
{
return bar+<?php echo $n;?>;
}
こんなに簡単で便利なのに、なんで誰も使わないんだ。