2014-01-10 48 views
-1

我需要將我的PHP文件的結果發送到JavaScript函數/文件。 我發現了一些類似的答案:var x='<?php echo $pathinfo; ?>'; 或本:PHP函數返回值爲JavaScript

myHtmlFile.html:

<script type="text/javascript" src="jquery-1.8.1.js"></script> 
<script type="text/javascript" src="newEmptyPHP.php"></script> 
<script language="javascript"> 

function test() 
{ 
    alert(result); 
} 

</script> 

newEmptyPHP.php:

<?php 
    $res="it is result"; 
    echo "var result = ".json_encode($res).";"; 
?> 

我的問題是,是否有方法的返回值從PHP 函數而不是從PHP文件。 是這樣的:

<?php 

function phpFunction(){ 
    $res="it is result"; 
    return $res; 
} 
?> 

我需要簡單的PHP/JavaScript代碼沒有什麼複雜的。 我想在一個php文件中保留很多功能,而不是很多php文件。

+0

使用post請求,當PHP在服務器上運行時,不能直接在PHP函數中傳遞JavaScript變量。如果函數不明確,您可以將其回顯到JavaScript變量中。當爲JS提供PHP文件時, –

+0

也使用適當的頭文件。 'header(「content-type:application/javascript」);' – thpl

+0

你會在JavaScript中調用相同的函數,你在php文件中定義了' –

回答

2
<?php 
function phpFunction(){ 
    $res="it is result"; 
    return $res; 
} 
?> 

<script> 
var result = "<?php echo phpFunction() ?>"; 
</script> 

上述方法將起作用。但是,如果您想要更多的PHP/JS組合腳本,請學習AJAX。

+0

我喜歡你的解決方案它工作的是同一個文件,但是當我試圖在另一個文件中得到結果時,它不起作用。我怎樣才能使結果將在另一個javaScript文件? – igorb0214

0

您可以在您的一個php文檔中打開儘可能多的php標籤。然後,您可以將這個PHP文檔與您的主文檔分開(但是,這需要在php中製作主文檔,並使用「php include」或「php require」),或者您可以根據需要打開和關閉php標籤。例如,您甚至不必在PHP結束時關閉該行。

<?php if (a==a) { ?> 
<div> 
    <script> 
    <?php echo 'do something here'; ?> 
    </script> 
</div> 
<?php } ?> 

使用上面的例子可以提供一些獨特的結果。只要記住,你用php做的任何事情都可以將結果回顯出來,並把它放到你的javascript中間。

0

從PHP獲取數據到JavaScript的最佳方式是使用AJAX,使用您聲明的jQuery。

您可以使用$.get()

你可以叫你的PHP腳本包含在你的URL請求參數的功能。

當在url中指定了一個特定的參數時,那麼你可以調用你的函數並且隨意地回顯你想要的javascript。

祝您有美好的一天!