我在哪里可以在URL中的php文件名后检索信息?

时间:2015-10-23 02:27:35

标签: php wordpress

给出由wordpress主题生成的url:

<a href="http://localhost/~site/sitename/index.php/subjects/">Subjects</a>

一旦目标页面加载,我在哪里可以检索“subject”信息(来自index.php /之后)?这样我就可以在条件语句中使用它了吗?

这有意义吗?

感谢。

2 个答案:

答案 0 :(得分:0)

我不确定你是否想要搜索&#34;科目&#34;具体页面,或者如果你想在index.php / your-page /的任何页面上做同样的事情。无论哪种方式,您都可以使用正则表达式来查找该页面名称字符串。

$href = "http://localhost/~site/sitename/index.php/subjects/";
$regex = "/(?:index.php\/)([\w-]+)\/$/";

preg_match($regex, $href, $matches);

print_r($matches);

$matches是匹配字符串的数组。 &#34;主体&#34;如果找到任何匹配,则应为$matches[1]

键是([\w-]+),代表可以用短划线分隔的任意数量的单词字符,如页面名称,例如&#34; my-awesome-page&#34;或只是&#34;页面&#34;。您可以将$matches[1]与&#34;科目进行比较&#34;或者您喜欢的页面名称。

如果你只想找到&#34;科目&#34;具体而言,您可以将([\w-]+)换成文字(subjects)

请注意,preg_match()实际上返回值,无论是否匹配:

  • 1是匹配
  • 0表示不匹配
  • FALSE是否发生错误

所以,如果你只是使用文字&#34;科目&#34;在比赛中,你可以写

if (preg_match($regex, $href, $matches))
    // your logic

更多信息:http://php.net/manual/en/function.preg-match.php

答案 1 :(得分:-1)

根据上面的链接,该链接直接访问主题中的d索引页面,并且没有表示信息来从d个主题检索文件名。 GET变量可以与受试者一起使用,如subject?subject = something

然后你可以通过调用$ _GET ['subject']

来获取信息

如果d信息存储在DB中... U可以使用主题中的d信息查询获取数据源名称并链接到您的文件位置以获取实际文件但使用get make ur数据不安全... ..