php 编程问题:只对链接中的 中文 进行urlencode转换,怎样处理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 编程问题:只对链接中的 中文 进行urlencode转换,怎样处理相关的知识,希望对你有一定的参考价值。
链接形式如下
/2012/新闻/22.html
只对 "新闻"进行urlencolde转换,要怎样办?
function urlencode_ch($str) //直接用这个函数就可以了
function callback($match)
return urlencode($match[0]);
return preg_replace_callback('/[^\0-\127]+/','callback',$str);
//正则表达式匹配非单字节字符(含中文)
echo urlencode_ch('/2012/新闻/22.html'); 参考技术A /2012/urlencolde(urlencolde)/22.html 参考技术B 同意davidaq的
100分求PHP获取图中链接URL中的ID数字值。
对于 url ,可以使用 parse_url 函数来解析获取相应的部分,比如 host、path、query 等。按照你题目的要求,需要获取的是 query 部分,这部分又可以使用 parse_str 函数来解析,然后获取需要的参数,比如你这里的 id。
这里有一个函数,用于获取一个链接的URL的query部分,并解析成数组,可以很方便的通过键名来获取参数值。
function getQuery($url='')
$url=trim($url);
if($url=='')
return false;
// 解析 url,获取 query 部分,它是一个字符串
$query=parse_url($url, PHP_URL_QUERY);
if($query===null)
return null;
// 解析 query 部分,将会保存到一个数组
parse_str($query, $params);
return $params;
// 使用举例
$url='...?id=24498704247'; // 你要解析的那个 url
$paras=getQuery($url); // array( 'id' => 24498704247)
echo $paras['id']; // 24498704247追问
请问获取这个ID值后怎么在页面中调用呢?
追答取出来的id它就是一个字符串。你指的调用是什么意思?如何使用,要看你的需求。
参考技术A $str = "http://xxx.com/sss.html?id=123123";preg_match("/id=(\d*)/", $str ,$matches);
echo $matches[1];
以上是关于php 编程问题:只对链接中的 中文 进行urlencode转换,怎样处理的主要内容,如果未能解决你的问题,请参考以下文章