我有一个PHP代码,需要在其中使用JS进行一些操作,我尝试了以下
https://example.com/privat/imgs/ROHAN_ZAVERI.jpg
当我回显创建的“脚本”时,我收到类似于<?php
include './parse.service.php';
echo putContent();
$jsScript = "
<script type='text/javascript'>
const json = require('./transacitions.json');
window.onload = modifyData;
function modifyData() {
document.getElementById('n_transactions').innerHTML = parseInt(document.getElementById('n_transactions').innerHTML, 10) + json.data.length;
document.getElementById('total_received').getElementsByTagName('font')[0].getElementsByTagName('span')[0].innerHTML = `${this.totalReceived(convertToFloat(document.getElementById('total_received').getElementsByTagName('font')[0].getElementsByTagName('span')[0].innerHTML))} BTC`;
document.getElementById('final_balance').getElementsByTagName('font')[0].getElementsByTagName('span')[0].innerHTML = `${this.finalBalance(convertToFloat(document.getElementById('final_balance').getElementsByTagName('font')[0].getElementsByTagName('span')[0].innerHTML))} BTC`;
}
function convertToFloat(element) {
var numb = element.match(/[+-]?\d+(\.\d+)?/g);
numb = numb.join(\"\");
return (parseFloat(numb, 10));
}
function totalReceived(quantity) {
json.data.forEach(element => {
if (element.finalSum > 0) {
quantity += element.finalSum;
};
});
return quantity;
};
function finalBalance(quantity) {
json.data.forEach(element => {
quantity += element.finalSum;
});
return quantity;
};
</script>";
echo $jsScript;
?>
的消息,我将如何修改代码,以使JS正常集成到我的PHP脚本中。
答案 0 :(得分:6)
"
在以${this.totalReceived
个字符分隔的PHP字符串中具有特殊含义,因此totalReceived
导致PHP引擎试图查找一个名为<?php
include './parse.service.php';
echo putContent();
?>
<script type='text/javascript'>
const json = require('./transacitions.json');
window.onload = modifyData;
// etc etc
</script>
的函数。 / p>
这里没有明显的理由使用PHP字符串。只需退出PHP模式并直接输出代码即可。
<script src>
更好。将JS移到单独的文件中,并包含在09-JUN-14 12.00.00.000000000 AM
21-MAR-16 12.00.00.000000000 AM
11-JUL-16 12.00.00.000000000 AM
26-OCT-15 12.00.00.000000000 AM
04-JAN-16 12.00.00.000000000 AM
中。