【发布时间】:2017-01-09 23:50:57
【问题描述】:
PS:最后是完整代码
我有 2 页。
php.php
js.php
我使用 curl 将变量从 php.php 发送到 js.php
function js(){
$ch = curl_init();
curl_setopt($ch , CURLOPT_URL ,"http://localhost/js.php");
curl_setopt($ch , CURLOPT_POST , true);
curl_setopt($ch, CURLOPT_POSTFIELDS," ");
curl_setopt($ch , CURLOPT_FOLLOWLOCATION , TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$allaa= curl_exec($ch);
$errorr = curl_error($ch);
echo $allaa;
return $allaa;
}
js.php 包含 Javascript 代码
我将我从第一页收到的值传递给第二页中的Javascript
通过此代码
var variable=<?php echo json_encode($variable); ?>;
我对变量做了一些处理 结果我用这段代码打印出来
variable="Hello World";
document.getElementById("result").innerHTML = "!!!"+variable+"!!!";
js.php 包含
html代码
<p id="result"> </p>
Javascript的结果必须像这样出现在标签中
<p id="result">!!!Hello World!!! </p>
在 php.php 页面 我将返回值存储在变量x
中我打印出来了
$x=js();
$xb = get_string_between($x, "!!!", "!!!");
echo xb;
结果必须是
你好世界
但事实并非如此 它的
"+变量+"
如何解决这个问题
新编辑这是代码
php.php页面代码
<?php
function get_string_between($string, $start, $end){
$string = ' ' . $string;
$ini = strpos($string, $start);
if ($ini == 0) return '';
$ini += strlen($start);
$len = strpos($string, $end, $ini) - $ini;
return substr($string, $ini, $len);
}
function js(){
////////////////
$ch = curl_init();
curl_setopt($ch , CURLOPT_URL ,"http://localhost/js.php");
curl_setopt($ch , CURLOPT_POST , true);
curl_setopt($ch, CURLOPT_POSTFIELDS,"variable=hello");
curl_setopt($ch , CURLOPT_FOLLOWLOCATION , TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$allaa = curl_exec($ch);
$errorr = curl_error($ch);
echo $allaa;
return $allaa;
}
$ff=js();
echo $xb = get_string_between($ff, "!!!", "!!!!");
?>
js.php页面代码
<?php
global $variable;
$variable=$_POST['variable'];
?>
<html>
<script>
var variable=<?php echo json_encode($variable); ?>;
variable=variable+" world ";
document.getElementById("result").innerHTML = "!!!"+variable+"!!!!";
</script>
<p id="result"> </p>
</html>
【问题讨论】:
-
你这样做有什么原因吗?
-
是的,最大的原因是我想使用一个名为 JSEncrypt() 的 JavaScript 函数,它只用于 javascript,我想通过这个值处理来自 php 的值,我想处理许多变量和所有这些在一页中而不更改当前页面
-
!!Hello World!!两侧有两个!...get_string_between($x, "!!!", "!!!");查找 THREE 次!.. 通过查找无法找到!!对于!!!(PS 这个评论看起来像brainf*ck 代码!!) -
现在检查代码:)
-
我的意思是有理由使用 curl 吗?但是在 javascript 中你需要定义变量: var variable="Hello World";
标签: javascript php html curl