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呢?
例如:
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('');
?>
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 - 啥表现更好?