正如标题所说,我需要将php放在由php
回应的javascript中例如:
<?
echo ('<script language="javascript" type="text/javascript">
if (something) then (some php)')
?>
那不是真正的代码可能有助于得到这个想法,请注意尽可能通过这种方式做尝试的最佳方式。
答案 0 :(得分:5)
你不能这样做,PHP是一种服务器端语言,这意味着它在页面加载时呈现,而不是在之后。
解决方案可以是通过AJAX调用PHP,PHP可以具有案例条件,然后它将呈现您想要的内容。
示例:
javascript(使用jQuery):
$(".yourbutton").click(function(event){
event.preventDefault();
$.post("yourPHP.php", {var: somethingdynamicpassedviajavascript},
function(data){
//get ther result
$("#yourdiv").html(data);
}, "html");
});
这样做是将click事件放入名为“yourbutton”的类中,当您单击它时,它将通过AJAX帖子调用外部PHP,发送var(在此示例中),您可以发送动态的东西,用一些var改变“somethingdiynamicpassedviajavascript”。
PHP(yourPHP.php):
$myvar = $_REQUEST['var'];
//do your cases here:
switch ($myvar) {
case "1":
echo "this is for the case 0";
break;
case 1:
echo "this is for the case 1";
break;
}
在这里你获得了var,并根据具体情况发送不同的输出。 请注意,这可能需要为POST和其他反破坏方法添加测试......
答案 1 :(得分:0)
是的,你可以这样做..你的php scirpt生成/回显你的html页面中的javascript代码。 你只需要使用单引号和双引号并正确地转义它们 在大型脚本中,这非常混乱 - 最好将你的js代码放在一个单独的js文件中
答案 2 :(得分:0)
如果你想根据某些条件动态创建一个javascript,你正在寻找链接的东西:
<script language="javascript" type="text/javascript">
<?
if ($something == $somethingelse)
{
echo 'var something = 10;';
}
else
{
echo 'var somethingelse = 25;';
}
?>
</script>
如果您要通过javascript执行php代码......实际上无法完成,最多可以使用PHPjs来模拟php函数。
答案 3 :(得分:-3)
<?php
echo ('<script language="javascript" type="text/javascript">
if (something) then (some php)')
echo ('</script>');
?>