Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中调用Javascript函数,同时将PHP变量传递给函数_Javascript_Php_Function_Variables_Parameter Passing - Fatal编程技术网

在PHP中调用Javascript函数,同时将PHP变量传递给函数

在PHP中调用Javascript函数,同时将PHP变量传递给函数,javascript,php,function,variables,parameter-passing,Javascript,Php,Function,Variables,Parameter Passing,在PHP代码中调用JavaScript函数并尝试将PHP变量作为参数传递到函数中时,我遇到了一个问题。虽然这对我来说很简单,但我无法通过尝试不同的语法来理解它 下面是一个示例代码,可以演示该问题: <?PHP $var1 = 0; $var2 = 1; $var3 = 2; echo '<script type="text/javascript">functionName($var1, $var2, $var3);</script>'

在PHP代码中调用JavaScript函数并尝试将PHP变量作为参数传递到函数中时,我遇到了一个问题。虽然这对我来说很简单,但我无法通过尝试不同的语法来理解它

下面是一个示例代码,可以演示该问题:

<?PHP
    $var1 = 0;
    $var2 = 1;
    $var3 = 2;
    echo '<script type="text/javascript">functionName($var1, $var2, $var3);</script>';
?>

如果我尝试传递常量(例如“123”),则会调用函数并传递值,但当尝试传递PHP变量时,根本不会调用函数

如何才能正确地执行此操作

单引号通常将您的
$var
放在
$var
中。而双引号将您的
$var
置于
0 1或2

echo“函数名('$var1','$var2','$var3')

我认为应该使用大括号来更好地区分字符串中的变量。就这样把它们包起来:

echo "<script type='text/javascript'>functionName({$var1}, {$var2}, {$var3});</script>"
echo“函数名({$var1},{$var2},{$var3});”

echo“functionName($var1,$var2,$var3);”你的我已经更改了你的引号。这是我在代码中使用的实际引号,有什么区别吗?是的,因为单引号通常将你的
$var
作为$var。而双引号将你的
$var
放在0 1或2中,我会回答这个问题。我可以吗?把它标为绿色支票?谢谢。如果你不介意的话,我有个问题。当我的一个变量包含新行时,不会调用该函数。我试过nl2br(),但没用。有什么想法吗?你能把完整的资料贴到某个地方吗?完整的资料是不必要的,因为它太大了。我用
替换了所有的换行符,实际上解决了这个问题。为了演示这个问题,只需在php中定义一个变量,并将其值设置为textarea的文本值(并确保在textarea中键入了换行符)。然后尝试将该变量传递给javascript函数。您将看到该函数永远不会被调用。在没有任何换行符的textarea上尝试同样的方法,效果会非常好。再一次,我已经解决了这个问题,但是我没有得到函数从未被调用的逻辑。奇怪的是,nl2br()适合我。。。您能否至少给出包含换行符特殊字符的文本?文本根据用户输入而变化。它只是任何包含换行符的文本。
echo "<script type='text/javascript'>functionName({$var1}, {$var2}, {$var3});</script>"