手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表2009年12月的文章

关注着一些所关注的东西【加密了】

这篇日志被加密了,请输入密码后查看。

PHP获取当前网址/替换网址query中的值

这是一篇来自虫少侠的文章,事实上我也写过类似的。不过我当初是用在模版里,写在模版里为smarty中的。。。用法大致为{$url|urlreplace:"abc=def"},也就是把url里abc的键值换为Def,这样就避免在参数过多的时候,我一一输入了。。适合用在搜索后,一些Tag标签的切换等。。。。

下面就是虫少侠的内容了:

项目中用到的两个函数,自己写了下,放这做为备份吧。

一是PHP获取当前页面的网址:

PHP代码
  1. //获得当前的脚本网址【我稍整理了一下。。。鄙视不整理代码的人】  
  2. function GetCurUrl(){  
  3.     if(!emptyempty($_SERVER["REQUEST_URI"])){  
  4.         $scriptName = $_SERVER["REQUEST_URI"];  
  5.         $nowurl = $scriptName;  
  6.     }else{  
  7.         $scriptName = $_SERVER["PHP_SELF"];  
  8.         if(emptyempty($_SERVER["QUERY_STRING"])) $nowurl = $scriptName;  
  9.         else $nowurl = $scriptName."?".$_SERVER["QUERY_STRING"];  
  10.     }  
  11.     return $nowurl;  
  12. }  

另一个是PHP替换网址中query部分的某变量的值比如 ,我们要设$url中的key=321;

其实有几种情况:

$url=’www.sina.com/a.php?key=330′;

或$url=’www.sina.com/a.php;

或$url=’www.sina.com/a.php?cat=2′;

等等。虽然情况很多,但PHP处理起来非常简单,如下:

PHP代码
  1. /* 将URL中的某参数设为某值*/ //【这一段就挺好啊】  
  2. function url_set_value($url,$key,$value)  
  3. {  
  4.     $a=explode('?',$url);  
  5.     $url_f=$a[0];  
  6.     $query=$a[1];  
  7.     parse_str($query,$arr);  
  8.     $arr[$key]=$value;  
  9.     return $url_f.'?'.http_build_query($arr);  
  10. }  

原文来自:http://roln.cn/2009/07/30/lamp/some-php-url-function/

不过我的替换是这样写的。。当然也很烂 。。

PHP代码
  1. <?php  
  2. /** 
  3.  *使用例程:可用于分页类或页面中的替换等 
  4.     $url = "add_jd.php?pid=4&tb=gm_jd&page=1"; 
  5.     echo( "原始的URL:" . $url ); 
  6.     echo( '<br/>' ); 
  7.     echo( "字符串参数:" . url::replace( $url , "pid=10,page=2") ); 
  8.     echo( '<br/>' ); 
  9.     echo( "数组型参数:" . url::replace( $url , array('pid'=>10,'page'=>5)) ); 
  10.     //echo( urlReplace( $url , array('pid'=>10,'page'=>5)) ); 
  11. */  
  12. /** 
  13.  * url replace 
  14.  * @param string $url 需要替换的URL字符串,一般为aaa.php?abc=def,也可以带上路径,象http://xxx.com/abc/def.php?aa=bb 
  15.  * @param mixed $options 需要替换的变量,可以是字符串或数组,如果是字符串,格式为"aa=bb,cc=dd",有多个,用","隔开 
  16.  * @return string $url 替换后的URL 
  17.  */  
  18. class url   
  19. {  
  20.     static function replace ( $url , $options)  
  21.     {  
  22.         $options = self::optInit( $options );  
  23.         $Query = parse_url$url , PHP_URL_QUERY );  
  24.         if($Query){  
  25.             parse_str$Query , $GET );  
  26.             if ( $GET ){  
  27.                 //foreach ( $GET as $_k => $_v ){  
  28.                 //  //if( array_key_exists( $_k , $options)){  
  29.                 //      $GET[$_k] = $options[$_k];  
  30.                 //  //}  
  31.                 //}  
  32.                 $GET = array_merge($GET,$options);  
  33.             }  
  34.             return str_replace$Query , http_build_query( $GET ), $url );            
  35.         }  
  36.         if( !$Query && $options ){  
  37.             return $url . "?" . http_build_query($options);  
  38.         }  
  39.         return $url;  
  40.     }  
  41.   
  42.     static private function optInit ( $options )  
  43.     {  
  44.         ifis_string$options )){  
  45.             $optlists = Power::Normalize( $options );  
  46.             foreach$optlists as $val){  
  47.                 list($tmpKey,$tmpVal) = Power::Normalize( $val , "=");  
  48.                 $opts[$tmpKey] = $tmpVal;  
  49.             }  
  50.         }else{  
  51.             $opts = $options;  
  52.         }  
  53.         //unset( $options );  
  54.         return $opts;  
  55.     }  
  56. }  
......虽然考虑了一些东西,但也仅仅是个很一般的解决方法

 

Tags: parse_str, parse_url

一点点的小意外

或许有朋友已经发现了。从上个月的21日左右,我的RSS就不再输出了?其实不是这样的,如果你订阅的是feed.neatcn.com的RSS,那是真的没有输出了

原因在于,上个月的时候,迁移机房 ,在更换DNS解析的时候。刷刷刷的就全部删除了。而忘了我的feed.neatcn.com是指到feedsky的。所以,凡是用这个域名订阅的朋友都收不到俺的RSS输出啦。。

不过http://www.feedsky.com/neatcn/还是可以正常访问的,本来我还不知道。今天yhustc告诉我不能访问,我才想起来。。。于是立马去DNS解析那里添加了feed.neatcn.com的解析。。

不好意思了各位。。疏忽疏忽。虽然我上面原创的东西也不咋地。。。

感谢你们的订阅

明年的粪斗目标

粪斗目标总还是需要的。年终总结也应该是要有的。否则人就没有进步了。。

今年的目标除了手机换了啥都没有实现,手机是换成HTC的G2了。使用下来感觉还行,基本达到了我的理想状态【可惜不会java,无法为其做开发。think in java买是买了,可惜翻到现在都没有翻超过100页。。。】

明年也有一些粪斗目标啦。。
1、MBP 13或者15,既可以用来IB又能用来开发,当然itunes听说比windows的要好
2、iPod Touch,不过因为有iPod Classic,估计被允许的机会较小
3、迷你电脑,比较想的还是这个,lifebook之类的,也是在考虑之内,可惜不便宜啊。。

不一定能实现的才能被用来当作粪斗目标。所以上面就是我明年在电子产品方面的目标。
努力啊。

恐怖的图片程序 。。。

在网上看到介绍说Lifebox是一套快速,轻量级采用php/MySQL开发的照片与视频管理系统。设计用于管理大数据量多 媒体文件。支持直接在系统中播放视频,不需要下载到本地播放。支持用户注册按权限查看/评论你共享的照片与视频。此外Lifebox还拥有基于Ajax技 术实现的漂亮用户界面。

兴冲冲的去官网看了一下,结果吓的不敢装:
1、
mediainfo v0.7.9 or greater

2、imagemagick 6.3.7.9 or greater

3、ufraw 0.13-1build2 or greater 

看到这些我就晕了。当然还有一些其他的。。。不敢装了。【我认为恐怖的原因是一个小小的图片程序,居然需要外加这么多的插件,当然你可以说是为了效果,但总觉得不舒服,我安装了这些插件,我还得为服务器上的其他用户一一配置权限,让他们无法使用这些插件,因为他们可能会很占CPU,所以这个程序可能比较适合那些有独立服务器人来使用,或许会很爽吧。。】

更多的需求在这里:http://www.getlifebox.org/2009/03/install-lifebox-on-ubuntu-810-intrepid-ibex/

恐怖啊。不过看上去效果不错:

大小: 84.82 K
尺寸: 217 x 376
浏览: 1433 次
点击打开新窗口浏览全图

Records:4612345678910