我有一個網站,我包括一個PHP庫文件和JavaScript庫文件。我都凝結着問題的以下文件:組織代碼,其中包括PHP和JavaScript文件
的index.php
<?php
include('constants.php');
?>
<html>
<head>
<script type="text/javascript" src="lib.js"></script>
</head>
<body onload="javascript:show_const_1('<?php echo(CONST_TEXT); ?>');
show_const_2();">
Some text here
</body>
</html>
constants.php
<?php
define('CONST_TEXT', 'Hello World');
?>
lib.js
function show_const_1(string)
{
alert(string);
}
function show_const_2()
{
alert('<?php echo(CONST_TEXT); ?>');
}
結果是,當頁面加載時,我得到兩個消息框。第一個是「Hello World」,第二個是「<?php echo(CONST_TEXT);?>」。第一個javascript方法做到了我想要的,但是我將在整個網站的許多地方使用該函數,因此理想情況下我不希望每次都要將常量作爲參數傳遞。
是否有重新排列代碼以使第二個javascript方法有效的好方法?
JavaScript的MIME類型現在是* application/javascript *。 – Gumbo 2009-10-02 10:05:49
很多有用的評論 - 謝謝。 PHP現在正在lib.php中執行,但常量CONST_TEXT似乎沒有在lib.php中定義。 php <?php echo CONST_TEXT; ?>導致字符串「CONST_TEXT」(與「Hello World」相對)。 – tttppp 2009-10-02 10:38:22
您可能需要包含()您在 – Greg 2009-10-02 10:45:39