检查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通用返回值设置方法

遇到一个不错的php代码。记录一下。 在写php代码时,经常会遇到需要返回值的情况,可以统一设置一下返回值的格式。 下面就是一个不错的例子。 配置类Return.conf.php &...

PHP 多进程与信号中断实现多任务常驻内存管理实例方法

PHP 多进程与信号中断实现多任务常驻内存管理实例方法

本文章基于 pcntl 扩展做的多进程测试。 进程调度策略 父子进程的调度由操作系统来负责,具体先调度子进程还是父进程由系统的调度算法决定,当然可以在父进程加上延时或是调用进程回收函数...

php 操作数组(合并,拆分,追加,查找,删除等)

1. 合并数组 array_merge()函数将数组合并到一起,返回一个联合的数组。所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次迫加。其形式为: 复制代码 代码如下...

标准PHP的AES加密算法类

分享一个标准PHP的AES加密算法类,其中mcrypt_get_block_size('rijndael-128', 'ecb');,如果在不明白原理的情况下比较容易搞错,可以通过mcr...

5款适合PHP使用的HTML编辑器推荐

5款适合PHP使用的HTML编辑器推荐

概述 Web开发中,很多地方都会用到HTML编辑器(富文本编辑器),我也用过几种,如UEditor、CkEditor等。这几天看了几篇文章,都是关于HTML编辑器的,写个文章记录下。 推...