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

WBOY
풀어 주다: 2016-06-23 13:50:05
원래의
997명이 탐색했습니다.

        在公司项目的改造当中,经常会遇到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>";?>	
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!