PHP里include的文件能跟参数吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP里include的文件能跟参数吗?相关的知识,希望对你有一定的参考价值。

比如include_once("l_side.php");
像根据应用的位置显示不同的l_side.php的内容,能不能用
include_once("l_side.php?xx=1");
这种方式来引用?如果可以,在l_side.php里通过什么方式来取xx=1呢?

  php的include可以载入一个外部php文件,其参数是一个文件名,既然是文件名,就不能带参数了。
  例如:
  include "http://localhost/aaa.php?id=1"; //正确
  include "aaa.php?id=1"; //错误
  其实include本义就只是用来载入一个外部文件到当前文件中来的,并不解释其中的代码。因此带参数看上去似乎没有意义。
参考技术A

如果“URL fopen wrappers”在 PHP 中被激活(默认配置),可以用 URL(通过 HTTP 或者其它支持的封装协议――所支持的协议见附录 N)而不是本地文件来指定要被包含的文件。如果目标服务器将目标文件作为 PHP 代码解释,则可以用适用于 HTTP GET 的 URL 请求字符串来向被包括的文件传递变量。严格的说这和包含一个文件并继承父文件的变量空间并不是一回事;该脚本文件实际上已经在远程服务器上运行了,而本地脚本则包括了其结果。

正确使用方法:

include 'http://www.example.com/file.php?foo=1&bar=2';

参考技术B 不知道! 你试下就知道了赛.

比如文件里面定义了

$ss="hellp";

include 来的文件里面是可以使用 $ss的

但 $ss 要放在include 前
参考技术C 不能。。。include和require不是得到解析后的数据

而是把一个文件的代码完整拼接
参考技术D 没有见过,应该不可以的吧。

PHP文件POST传递参数到本身后,include包含的文件接收不到参数?

文件A,有查询功能,include包含了一个查询数据库的文件B。
打开A文件,B默认查询所有数据显示,点击A的查询,post到本身,在A文件存在的$_POST["XX"]可以输出POST的值,在B中就是空的。
A文件部分代码:
<?php
include '../facade/文件';
?>
<form action="index.php" method="post" id="Find">
用户名:
<input type="text" name="userName" id="userName" value="<?php $_POST['userName'] ?>">
<input type="submit" value="搜索">
</form>
<?php
字数超限了,这里是输出$userlist中的内容
?>
B文件代码:
<?php
include '../DAL/voteDal.php';
if(isset($username)&&!$username=='')

echo "存在" . $username;
$userlist = findUsers($username);

else

echo "不存在" . $username;
$userlist = findUsers('');

?>

B中的$username是哪里的?

A文件中是userName,我不记得PHP中变量名是否区分大小写。B应该要查询数据库,那查询语句呢?

建议这些简单的不要用包含某某文件,form直接提交到B页面,在B页面中处理完后,加上echo "<script>location.href='A.php';</script>";这里B处理完以后就会自动跳转回A。
因为程序中本来就是一些变量的传递关系要搞清楚,很容易出错。
参考技术A include是跳转执行,就是当你include一个文件的时候,会跳转到相应的文件执行,执行完成之后又跳转回来;require则是将包含的程序获取到自己的程序中去执行,所以require只会执行一次,而include会执行多次,且不会因为致命错误停止执行。 参考技术B 那么没有调用到b 里面的方法吧 参考技术C 贴上代码来瞅瞅

以上是关于PHP里include的文件能跟参数吗?的主要内容,如果未能解决你的问题,请参考以下文章

PHP:file_exists vs stream_resolve_include_path - 啥表现更好?

PHP之文件引用与自定义函数

vs2010使用main函数

selenium调用chrome能跟直接打开chrome一样吗

七月新增开源项目:你能跟得上前端造轮子的速度吗?

abap中select * from 后面能跟变量吗?