hp 288hp 280 pro g2 mt驱动 USB口突然没有电

var sogou_ad_id=731545;
var sogou_ad_height=90;
var sogou_ad_width=980;正文 php实现文章中关键词加链接的方法
php实现文章中关键词加链接的方法
发布时间: & 编辑:
一般在文章展示时,都会将其中的关键词加上链接,增加网站的粘合性。想想觉得挺简单的,直接替换字符串不就行了。&br /&
可细细想来,还是有不少问题。比如文章内的html标签,标
$keywordArray = array(
&&& array('进程', '/linux-ps-view-process/')
&&& ,array('守护进程', '/linux-python-daemon/')
二维数组排序可以使用内置函数usort,代码如下:
复制代码 代码如下:
usort($keywordArray, function($a, $b) {
&&& $al = strlen($a[0]);
&&& $bl = strlen($b[0]);
&&& if ($al == $bl)
&&&&&&&& return 0;
&&&&&&&& return ($al & $bl) ? -1 : 1;
提取出所有html标签
复制代码 代码如下:
preg_match_all('/&\/?[a-zA-Z]+[^&]*&/', $content, $match);
if (isset($match[0])) {
&&& $htmlTagArray = $match[0];
这边的正则就是将&&包着的内容都提取出来,笔者认为凡是需要将&&号当成内容显示的,都应当用转义字符&&gt来替换,对于一切&&包着的内容都可以认为是标签。事实上浏览器也是这么干的,很多在线的文本编辑器也会自动转义这些字符。
分割内容,保存到数组
$noTagContentArray = preg_split('/&\/?[a-zA-Z]+[^&]*&/', $content);
这边用的正则表达式和上面提取html标签用的正则一致。
循环分割的内容数组,替换关键词链接
这边的处理方式是先将关键词替换成md5值,再将md5值替换成带链接的关键词,之所以这么处理,是为了解决关键词之间包含的情况。另外,笔者曾经考虑将分割的内容数组implode成一个字符串,就不用循环替换了,但是担心implode之后的字符串在拼接处会形成关键词,所以就没这么处理。
组合提取的html标签和处理后的内容
这步就比较简单了,依次拼接就OK了。需要注意的是html标签数组会比分割的内容数组长度小1,所以在取标签时,要用isset来判断下。
以上内容经多次测试没有问题,如有疑问,欢迎进入本站QQ群: 沟通交流。您可能感兴趣的文章:2017年1月 总版技术专家分月排行榜第三
2017年2月 PHP大版内专家分月排行榜第一2017年1月 PHP大版内专家分月排行榜第一
2017年1月 总版技术专家分月排行榜第三
2017年2月 PHP大版内专家分月排行榜第一2017年1月 PHP大版内专家分月排行榜第一
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。访问网站页面时,有的页面需要授权才能访问,这时候就会要求用户登录,跳转到登录页面login.php,怎么实现登录后返回到刚才访问的页面。
解决思路1:
在跳转到登录页面之前要将当前访问页面的url保存到cookie里面,登录验证授权通过后,从cookie中取出这个url值,跳转到该url指定的页面。
具体实现方法:
在提示用户登录的同时,在session或者cookie中记录下请求页面的URL;登录验证成功后在跳转回该URL。
checklogin.php
session_start();
if (!isset ($_SESSION['login_ok']))
echo "&script language=javascript&alert ('要访问的页面需要先登录。');&/script&";
$_SESSION['userurl'] = $_SERVER['REQUEST_URI'];
echo '&script language=javascript&window.location.href="login.php"&/script&';
session_start();
//此处省略了账号密码验证代码,验证OK再执行下面代码
if (isset ($_SESSION['userurl']))
//会话中有要跳转的页面
$url = $_SESSION['userurl'];
//没有要跳转的页面,则转到首页
$url = "home.php";
//0.5s后跳转
echo "&meta http-equiv="refresh" content="0.5;url=$url"&";
解决思路2:
除了存成cookie的形式,相信大家也看到了很多大型网站直接采用GET的形式获得,DZ的登陆机制就是这样。
这种思路具体是这样的:
在跳转到登录页面前要将访客访问的页面的url作为参数传递过去,登录验证后,授予访问权限之后跳转到该url指定的页面。
比如登录前的url为:/member/authpage.html 当访客访问时,点击无权限,跳转到登录页面的地址就为login.php?redirect_url=/member/authpage.html,这样在登录时就可以用GET方式获取该参数 /member/authpage.html,登录验证成功后跳转到authpage.html 这个页面就可以了。PHP 登录完成后如何跳转上一访问页面
字体:[ ] 类型:转载 时间:
访问网站页面时,有的页面需要授权才能访问,这时候就会要求用户登录,跳转到登录页面login.php,怎么实现登录后返回到刚才访问的页面
项目需求&访问网站页面时,有的页面需要授权才能访问,这时候就会要求用户登录,跳转到登录页面login.php,怎么实现登录后返回到刚才访问的页面。解决思路1:&在跳转到登录页面之前要将当前访问页面的url保存到cookie里面,登录验证授权通过后,从cookie中取出这个url值,跳转到该url指定的页面。具体实现&我现在的程序是基于ThinkPHP框架的,我们会有一个父类控制器,下面我就把这个设置cookie的代码加到这个BaseAction里面的_initialize()函数中,这样程序就大大简化工作量了。
代码如下:$refer = 'http://' . $_SERVER ['HTTP_HOST'] . $_SERVER['REQUEST_URI'];Cookie::set('refer', $refer);
登录检测的函数里面我们加入:
代码如下:$refer = Cookie::get('refer');
现在这个$refer就是我们之前访问的页面,我们可以通过AJAX返回这个参数,然后进行跳转,或者直接使用程序进行跳转,具体要根据你程序的需求了。解决思路2:&除了存成cookie的形式,相信大家也看到了很多大型网站直接采用GET的形式获得,Drupal的登陆机制就是这样。这种思路具体是这样的:在跳转到登录页面前要将访客访问的页面的url作为参数传递过去,登录验证后,授予访问权限之后跳转到该url指定的页面。比如登录前的url为:openphp.html 当访客访问时,点击无权限,跳转到登录页面的地址就为login.php?url=openphp.html,这样在登录时就可以用GET方式获取该参数 openphp.html,登录验证成功后跳转到openphp.html 这个页面就可以了。大致上我也就这两种思路了,如果你有更好的思路,真心希望你可以告诉我。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具

我要回帖

更多关于 hp288prog2mt 麦克风 的文章

 

随机推荐