在同一文档中使用Javascript中的PHP变量


Use a PHP variable in Javascript in same document

我有一个关于在Javascript中使用数据(在PHP中获得)的问题。这是我现在所做的:

文件index2.html

<div class="container">
   <form class="well">  
       <label>Your appid</label>  
       <input type="text" class="span3" id="appid" placeholder="Type your appid here...">  <br>
       <button type="submit" id="submit" class="btn btn-primary" data-loading-text="Loading..." >Submit</button>  
   </form>
   <p id="errors" class="text-error"></p>
</div> <!-- /container -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.9.1.min.js"><'/script>')</script>
<script src="js/main.js"></script>

文件main.js

$(document).ready(function() {
// CLICK ON SUBMIT BUTTON
  $("#submit").click(function(e) {
    // stop form submission first
    e.preventDefault();
    var btn = $(this);
    btn.button('loading');
    // GET VALUE OF APPID
    var appid = $("#appid").val();
    if (isNaN(appid))
    {
        alert("Only numbers allowed!");
    }
    else
    {
        // GET JSON FROM PHP SCRIPT
        $.ajax({
            type: 'GET',
            url: 'loadjson.php',
            data: {
                'appid': appid
            },
            success: function (data) {
                var object = JSON.parse(data);
                checkCompletion(object);
            },
            error: errorHandler
        });
    }
    }); // END OF CLICK FUNCTION
}); // END OF DOCUMENT READY

你可以看到我做了一个AJAX调用loadjson.php!

文件loadjson.php

<?php
  if(isset($_GET['appid']) && !empty($_GET['appid'])) {
      $appid = $_GET['appid'];
  }
  $json_url  ='http://api.tapcrowd.com/api/gateway/call/1.4/getApp?appid=' . $appid;
  $ch = curl_init($json_url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  $str = curl_exec($ch);
  curl_close($ch);
  $data = json_decode($str);
  $array = json_encode($data);
  echo $array;
?>

现在我有一个问题,如果有一种可能性,我不需要做一个AJAX调用,但也许我可以有PHP在我的HTML文件和使用它在我的Javascript?

有人知道这是可能的吗?是的,怎么可能?

如果你的html文档扩展名是.php那么你可以简单地使用

var phpValue = "<?=$yourVariable?>";

假设所有的json_encode和其他功能都是在$yourVariable上完成的,然后再使用它。