javascript画布标记和stroketext方法

javascript画布标记和stroketext方法,javascript,php,html,canvas,Javascript,Php,Html,Canvas,笔划文本方法不起作用。问题出现在以下行中: cns.strokeText(<?php echo posST($StreamVal[0][0]); ?>,x,y); cns.strokeText(,x,y); 当我在该数组元素([0][0]的元素)中使用数值时,不会出现任何问题,代码工作正常。但当我使用字符串值时,该值不会显示 <?php $StreamVal=array( array("Stream1",80), array("Stream2",10), array("

笔划文本方法不起作用。问题出现在以下行中:

cns.strokeText(<?php echo posST($StreamVal[0][0]); ?>,x,y);  
cns.strokeText(,x,y);
当我在该数组元素([0][0]的元素)中使用数值时,不会出现任何问题,代码工作正常。但当我使用字符串值时,该值不会显示

<?php
$StreamVal=array(
array("Stream1",80),
array("Stream2",10),
array("Stream3",10),
array("Stream4",10)
);
function posST($Stream)
{
    return $Stream;
}
?>
<script>
var c = document.getElementById("Canvas");
var cns = c.getContext("2d");
var x=50*Math.cos((<?php echo posST($StreamVal[0][1]); ?>*Math.PI)/50)+100;
var y=50*Math.sin((<?php echo posST($StreamVal[0][1]); ?>*Math.PI)/50)+75;
cns.font = "30px Arial";
**cns.strokeText(<?php echo posST($StreamVal[0][0]); ?>,x,y);**  
</script>

var c=document.getElementById(“画布”);
var cns=c.getContext(“2d”);
VarX=50*Math.cos((*Math.PI)/50)+100;
变量y=50*Math.sin((*Math.PI)/50)+75;
cns.font=“30px Arial”;
**cns.strokeText(,x,y);**
如何解决此问题?

尝试使用javascript函数

parseInt()

您正在将字符串回显到js,周围没有引号
..xt(“”,x..
如果您查看页面的源代码,它看起来会是:
..xt(这里的一些文本,x,y);
它会认为您引用的是某个变量,而不是字符串。@JonathanKuhn是正确的,您需要用引号括起您的语句。但您不应该一开始就混合使用PHP和JavaScript。作为一种良好的做法,请始终尝试通过例如通过Ajax使用JSON来避免这种情况。
parseInt(<?php echo posST($StreamVal[0][1]); ?>)