Php include然后抓取当前URL的结尾并将它们组合起来

时间:2014-03-10 14:34:11

标签: php include

我正在尝试根据用户所在网址的当前页面添加文件。

文件存储在/ includes /所有情况下和同一域中。

如果用户所在的当前网址是:

www.website.com/page/text_i_want.php?info=tree

<?php $url = curPageURL();?><?php include ("{$_SERVER['DOCUMENT_ROOT']}/includes.'/'.$id = substr( $url, strrpos( $url, '/' )+1"  ?>

这就是我所拥有的,但即使它确实有效,也不会删除包含.php之后的所有内容并将.txt添加到结尾

我只是想从URL的末尾抓取text_i_want(不包括动态部分)并将.txt添加到结尾,以便我有效地包括:

{$_SERVER['DOCUMENT_ROOT']}/includes/text_i_want.txt

我一直在';'错误和语法错误,我所拥有的意外T_ECHO。

更新

<?php include $_SERVER['DOCUMENT_ROOT'] . '/includes/' . basename($_SERVER['REQUEST_URI'], '?'.$_SERVER['QUERY_STRING']); ?>

该代码抓取URL末尾的文件名,这就是我想要的。我只是不确定如何用.txt

替换.php

2 个答案:

答案 0 :(得分:1)

我认为这就是你所需要的:

<?php include $_SERVER['DOCUMENT_ROOT'] . '/includes/' . basename(__FILE__, '.php') . '.txt'; ?>

更新

根据您的更新,请尝试$_SERVER['REQUEST_URI'] PHP文档说:“为了访问此页面而提供的URI;例如,'/ index.html'”。

如果这不是您想要的,请阅读PHP Server Variables

答案 1 :(得分:0)

解决了:(但不确定这是多么高效或整洁,但它确实有效)

我真的不知道我在做什么,但不知怎的,我已经设法混合@ SamOwl的代码和我找到的一个并稍微编辑它们以实现结果在想要:

<?php include $_SERVER['DOCUMENT_ROOT'] . '/includes/' . basename($_SERVER['REQUEST_URI'], 'php?'.$_SERVER['QUERY_STRING']) . 'txt'; ?>