如何将PHP放入Javascript中?

如何将PHP放入Javascript中?,javascript,php,jquery,echo,Javascript,Php,Jquery,Echo,我正在通过如下PHP函数检索类似count的Facebook页面: <?php function fbLikeCount($id,$appid,$appsecret){ $json_url ='https://graph.facebook.com/'.$id.'?access_token='.$appid.'|'.$appsecret.'&fields=likes'; $json = file_get_contents($json_url); $json_output = json

我正在通过如下PHP函数检索类似count的Facebook页面:

<?php
function fbLikeCount($id,$appid,$appsecret){
$json_url ='https://graph.facebook.com/'.$id.'?access_token='.$appid.'|'.$appsecret.'&fields=likes';
$json = file_get_contents($json_url);
$json_output = json_decode($json);
if($json_output->likes){
    return $likes = $json_output->likes;
}else{
    return 0;
}
}
?>
<?php
echo number_format(fbLikeCount('companynamegoeshere','XXXXXXXXXXXX','XXXXXXXXXXX'));
?>
<script>
$({someValue: 0}).animate({someValue: 450700}, {
duration: 3000,
easing: 'swing',
step: function () {
   $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
},
complete:function(){
      $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
  }
});
</script>

然后,我可以呼应出这样的问题:

<?php
function fbLikeCount($id,$appid,$appsecret){
$json_url ='https://graph.facebook.com/'.$id.'?access_token='.$appid.'|'.$appsecret.'&fields=likes';
$json = file_get_contents($json_url);
$json_output = json_decode($json);
if($json_output->likes){
    return $likes = $json_output->likes;
}else{
    return 0;
}
}
?>
<?php
echo number_format(fbLikeCount('companynamegoeshere','XXXXXXXXXXXX','XXXXXXXXXXX'));
?>
<script>
$({someValue: 0}).animate({someValue: 450700}, {
duration: 3000,
easing: 'swing',
step: function () {
   $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
},
complete:function(){
      $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
  }
});
</script>

但是,我使用JavaScript函数为页面上显示数字的位置制作动画,如下所示:

<?php
function fbLikeCount($id,$appid,$appsecret){
$json_url ='https://graph.facebook.com/'.$id.'?access_token='.$appid.'|'.$appsecret.'&fields=likes';
$json = file_get_contents($json_url);
$json_output = json_decode($json);
if($json_output->likes){
    return $likes = $json_output->likes;
}else{
    return 0;
}
}
?>
<?php
echo number_format(fbLikeCount('companynamegoeshere','XXXXXXXXXXXX','XXXXXXXXXXX'));
?>
<script>
$({someValue: 0}).animate({someValue: 450700}, {
duration: 3000,
easing: 'swing',
step: function () {
   $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
},
complete:function(){
      $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
  }
});
</script>

$({someValue:0}).animate({someValue:450700}){
时长:3000,
放松:"摇摆",,
步骤:函数(){
$('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue));
},
完成:函数(){
$('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue));
}
});
JS代码中的450700是我需要输入PHP回音编号的地方。甚至可以将PHP回音(如果我先将其设置为变量)放入JS中吗

我试过很多很多的方法,而且碰到了一堵砖墙。非常感谢您的帮助


谢谢

如果javascript在PHP文件中,可以将PHP标记放在javascript中。但老实说,最好创建一个隐藏的元素,在其中回显所需的数据,然后使用javascript获取该元素的值/innerHTML。

如果javascript在PHP文件中,可以将PHP标记放在javascript中。但老实说,你最好创建一个隐藏的元素,在其中回显你需要的数据,然后使用javascript获取该元素的值/innerHTML。

如果javascript代码位于php页面上,你可以在javascript中添加
php
代码,但我更喜欢使用,即:

somefile.php

<?php
$number = "1234";
echo <<< LOB
<script>
$({someValue: 0}).animate({someValue: {$number}, {
duration: 3000,
easing: 'swing',
step: function () {
   $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
},
complete:function(){
      $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
  }
});
</script>
LOB;
?>

如果JavaScript代码位于php页面上,您可以在JavaScript中添加
php
代码,但我更喜欢使用,即:

somefile.php

<?php
$number = "1234";
echo <<< LOB
<script>
$({someValue: 0}).animate({someValue: {$number}, {
duration: 3000,
easing: 'swing',
step: function () {
   $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
},
complete:function(){
      $('#facebookCount').text(commaSeparateNumber(Math.round(this.someValue)));
  }
});
</script>
LOB;
?>

要修改@Pedro Lobito的答案,您需要在js中回显如下值:

<?php
$number = "1234";
?>
<script>
$({someValue: 0}).animate({someValue: <?php echo"$number";?>}, {
duration: 3000,
...

$({someValue:0})。设置({someValue:})动画{
时长:3000,
...
或者:

    <?php
    $number = "1234";
    ?>


    <script>
    var testValue = <?php echo"$number";?>;
    $({someValue: 0}).animate({someValue: testValue}, {
    duration: 3000,
    ...

var testValue=;
$({someValue:0}).animate({someValue:testValue}{
时长:3000,
...
甚至

<input type="hidden" name="testInput" value="<?php echo"$number";?>" />

        <script>
        var testValue = $('[name=testInput]').val();
        $({someValue: 0}).animate({someValue: testValue}, {
        duration: 3000,
        ...

var testValue=$('#testSpan').text();
$({someValue:0}).animate({someValue:testValue}{
时长:3000,
...

要修改@Pedro Lobito的答案,您需要在js中回显如下值:

<?php
$number = "1234";
?>
<script>
$({someValue: 0}).animate({someValue: <?php echo"$number";?>}, {
duration: 3000,
...

$({someValue:0})。设置({someValue:})动画{
时长:3000,
...
或者:

    <?php
    $number = "1234";
    ?>


    <script>
    var testValue = <?php echo"$number";?>;
    $({someValue: 0}).animate({someValue: testValue}, {
    duration: 3000,
    ...

var testValue=;
$({someValue:0}).animate({someValue:testValue}{
时长:3000,
...
甚至

<input type="hidden" name="testInput" value="<?php echo"$number";?>" />

        <script>
        var testValue = $('[name=testInput]').val();
        $({someValue: 0}).animate({someValue: testValue}, {
        duration: 3000,
        ...

var testValue=$('#testSpan').text();
$({someValue:0}).animate({someValue:testValue}{
时长:3000,
...


是的,可以回显php值并在javascript中使用它,您尝试了什么?我已经尝试了几个小时不同的解决方案(包括本页上的所有解决方案),但要么得到0,要么得到NaN,而不是用phpy定期打印的数字。你已经将gavgrif的答案标记为正确,这对你有用吗?是的,他建议使用parseInt,以及隐藏的div,并使用text()获取内部信息工作正常。谢谢!是的,可以回显php值并在javascript中使用它,您尝试了什么?我已经尝试了几个小时不同的解决方案(包括本页上的所有解决方案),但要么得到0,要么得到NaN,而不是用phpy定期打印出来的数字。你已经将gavgrif的答案标记为正确,这对你有用吗?是的,他建议的parseInt,以及隐藏的div,并用text()获取内部。谢谢!谢谢,但这给了我一个“意想不到的=”PHP错误,这也不起作用:
仍然不起作用。请注意,如果我将
$number=“echo number”格式(fblikecoount('ccc','xxx','xxx');“替换为”
$number=“555”;`则工作正常。就好像PHP没有改变number\u格式一样(如果有意义的话,在将代码放入JS函数之前,先将代码装入一个数字中。在我的测试中,我要么得到0,要么得到NaN(我相信不是一个数字),谢谢,但这给了我一个“意外的”PHP错误,这也不起作用:
仍然不起作用。请注意,如果我替换
$number=“echo number\u格式(fbLikeCount('ccc'、'xxx'、'xxx');“只需使用
$number=“555”;”就可以了。这就好像PHP没有在将数字转换成数字格式(如果有意义的话,在将其放入JS函数之前先将fbLikeCount代码转换成数字。在我的测试中,我要么得到0,要么得到NaN(我相信不是数字)哇,这很有趣,我已经尝试了很多,读遍了我能找到的每一篇文章,但没有任何效果…当你说“隐藏元素”时,这种方法听起来不错你是说一个display none div,你能帮我编写代码吗?我会继续尝试的,谢谢!是的,没错。你明白了!给它一个id,这样你就可以使用
document.getElemenyById('myHiddenElement')
,或者因为你似乎在使用jQuery
$('#myHiddenElement')
。这都是javascript:)我尝试了这个隐藏的div:
,并进行了修改,但只得到了0,而不是php回音时得到的真实数字:
var myInnerHtml=$(“#测试”).innerHTML;$({someValue:0})。动画({someValue:myInnerHtml},{
您可能需要使用
$(“#测试”).text()
而不是jQuery.Oh,您还应该像这样包装javascript
$(document.ready(function(){console.log(“ready!”);})
谢谢你的帮助!!我终于得到了它,不得不使用parseInt并去掉了数字格式部分…再次感谢!哇,这很有趣,我已经尝试了很多,并且通读了我能找到的每一篇文章,但是没有任何效果…当你说“隐藏元素”时,这种方法听起来不错你是说一个没有显示的div,你能帮我写代码吗?我会继续尝试的,谢谢!是的,没错。你明白了!给我