检查url链接是否已经有参数的php代码 添加 ? 或 &

yipeiwu_com6年前PHP代码库
比如分页,因为有些链接已经有参数了,在附加分页信息的时候不能把原有的参数丢掉,所以判断一下链接是否有参数,然后根据需要附加分页信息。

方法很简单:
复制代码 代码如下:
((strpos($url, '?') !== false) ? '&' : '?');


检查链接中是否含有 ? ,如果有,如:
http://www.test.com/index.php?id=id
则直接在链接后面添加一个 & 然后跟上分页信息:
//www.jb51.net/index.php?id=id&page=12

如果链接中没有参数,如:
http://www.test.com/index.php
则需要添加 & 然后跟上分页信息:
//www.jb51.net/index.php?page=12

附上一个更为健全的检查方法:
复制代码 代码如下:

<?php
$old_url = $_SERVER["REQUEST_URI"];
//检查链接中是否存在 ?
$check = strpos($old_url, '?');
//如果存在 ?
if($check !== false)
{
//如果 ? 后面没有参数,如 http://www.yitu.org/index.php?
if(substr($old_url, $check+1) == '')
{
//可以直接加上附加参数
$new_url = $old_url;
}
else //如果有参数,如:http://www.yitu.org/index.php?ID=12
{
$new_url = $old_url.'&';
}
}
else //如果不存在 ?
{
$new_url = $old_url.'?';
}
echo $new_url;
?>

相关文章

PHP编程获取音频文件时长的方法【基于getid3类】

本文实例讲述了PHP编程获取音频文件时长的方法。分享给大家供大家参考,具体如下: 问题: 昨天在新增论坛功能的时候,移动端显示音频文件需要知道是多长的音频; 具体解决方案如下: 首先就是...

php daddslashes()和 saddslashes()有哪些区别分析

//GPC过滤,自动转义$_GET,$_POST,$_COOKIE中的特殊字符,防止SQL注入攻击 $_GET = saddslashes($_GET); $_POST = saddsl...

PHP+JS实现大规模数据提交的方法

本文实例讲述了PHP+JS实现大规模数据提交的方法。分享给大家供大家参考。具体实现方法如下: <?php session_start(); ?> <...

php创建多级目录代码

function createFolder($path) {    if (!file_exists($path))  &nb...

dedecms函数分享之获取某一栏目所有子栏目

以前从来没写过递归(其实想想,对算法完全没概念),刚好有这个需求,试着写了一下,发现也挺容易的,特别记录一下。 数据库是dedecms默认的,dede_arctype是保存栏目的表,re...