网页开发的阶段总结(三)JS与PHP直接互调用

WBOY
Freigeben: 2016-06-23 13:50:05
Original
997 Leute haben es durchsucht

        在公司项目的改造当中,经常会遇到js与php的函数互调的情况,而实际上JS与php的设计者是不提倡这两种语言直接进行调用的,一个是客户端语言,一个服务端语言,两者之间的交互往往靠的是ajax机制,get(),post()进行数据的传递。而且在两者在进行直接调用,往往有以下的限制:


1、首先,php与JS之间的互调只能在同个文件里,对其它文件的调用都会失败,无论是php还是JS的。

2、php与JS之间的调用只能针对的是函数,而对变量都不能实现引用,即在""中php不能引用JS的变量, 相反在"<script> </script>"中JS也不能引用php的变量。而通过网上搜索说可以实现互调,有可能是浏览器兼容的问题,本人用的浏览器是Google Chrome(版本 37.0.2062.103 m),这也在从侧面说明php与JS的直接互调很容易出现BUG。

3、在函数的调用时都要有返回值,php通过“echo”或“return”将数值返回,而JS通过“document.write()”或“return”将数值返回。

4、对函数的调用时,都要用一个变量将函数传递回来的值进行保存。例:在JS中 var y = ""; 在php中   $phpB = "<script> phpJSTest()</script>";注意:记得在对函数调用时要加上" "双引号。


附上部分代码:

     

<meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title></title><script language="JavaScript" src="javascript.js"></script><script language="JavaScript">function JSTest(){   var $tmp = "Hello, JS use the same file JS function";   return $tmp;}function phpJSTest(){   document.write("Hello, php use the same file JS function");}var tmp = "php call the same file JS element"; document.write("<br/><br/><br/><br/>"); document.write("script---call---show :"); document.write("<br/>");  //use the same file js function var x = JSTest(); document.write(x); document.write("<br/>");   //use same file php function var y = "<?php JSphpTest()?>"; document.write(y); document.write("<br/>");      //use another file's  JS function   var z = fileouter();  document.write(z);  document.write("<br/>");  </script><?php function phpTest()  {    echo "Hello, php use the same php  function";  }    function JSphpTest()  {    echo "Hello, JS use the same file php function";  }      include 'PHPcallOutfilePHP.php';      echo "<br/><br><br><br>";  echo "php---call---show"."<br>";     //php call the same file php function   $phpA = phpTest();   echo "$phpA"."<br>";      //php use the  same file JS function  $phpB = "<script> phpJSTest()</script>";  echo "$phpB"."<br>";     //php use external file php function   $phpC = phpcalloutfilephp();   echo "$phpC"."<br>";?>	
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!