Submitted by gouki on 2012, July 11, 3:39 PM
yiiredis是基于phpredis的一个YII组件。平时用的话确实也挺方便,但偶尔还是会有一些小BUG,比如说:
yiiredis自带了计数器的功能,嗯,它是调用了phpredis裏的代碼:
$counter = new ARedisCounter($key);
$counter->increment(); //表示每次加1
echo $counter->getValue();
這樣的代碼是沒有任何問題的,但問題卻出現在了:
$counter = new ARedisCounter($key);
echo $counter->getValue();
上面的代碼好象沒有任何問題?但就因為這樣寫,程序崩潰了。。
NND,你不先加1,就不能取$counter->getValue();
這尼瑪也太坑爹了吧。。。。。你好歹默認一個0嘛。
Tags: yiiredis
PHP | 评论:0
| 阅读:16282
Submitted by gouki on 2012, July 10, 6:05 PM
看到str_word_count的時候,想當然的認為它就是統計字符串中某些單詞出現的次數。结果,根本不是這樣,只是統考這個單詞出現在第幾位。我TNND。
然後一猶豫,我就寫了一個函數:
PHP代码
- function getStrCounts($str,$findstr='%s'){
- $i =$s= 0;
- while(($s = strpos($str,$findstr,!$s?0:$s+count($findstr)))!==false){
- $i ++;
- }
- return $i;
- }
等我写完后,发现,果然不错耶。然后我TNND又看了一下手册。。因为我记得这玩意确实是有函数的。找了一下,果然还真TMD有。substr_count就是这个苦逼的函数:
PHP代码
- $format = "There are %s monkeys in the %s %s %s";
- echo substr_count($format,"%s");
我晕啊。这个count,你为什么要扔到substr_这个前缀后面???真受不了。这个问题好象很久以前也有人提过,看来苦逼的人不是我一个啊
PHP | 评论:2
| 阅读:14892
Submitted by gouki on 2012, July 9, 9:12 AM
这个只是基于又拍云上面的一个小小的扩展,也是作了一个封装。
因为又拍云每次操作bucket都需要为它设置用户名和密码。如果我在一个controller里多次操作不同的bucket,有点麻烦 ,于是就做了一个小封装。
使用起来很简单,在配置文件main.php的components中加入一小段:
XML/HTML代码
- 'components'=>array(
- 'upyun'=>'ext.upyun.EasyUpyun',
- ),
当然,如果有需要额外定制的变量,也可以参考其他组件的设置方法。
附件在这里,我就不多说了,贴上组件的注释:
再贴上变量的注释
PHP代码
-
-
-
-
-
- public $alias = array(
- 'static' => 'test-public'
- );
-
-
-
-
-
-
- public $bucket = array(
- 'test-public' => 'admin:123456'
- );
-
-
-
-
- public $upyun;
-
-
-
-
- public $debug = FALSE;
Over,有想试用的,可以直接尝试下载附件。
附件: upyun.zip (5.59 K, 下载次数:2080)
Tags: yii, 又拍云, 组件
PHP | 评论:0
| 阅读:18865
Submitted by gouki on 2012, June 29, 6:38 PM
作為一名苦逼的程序員,他要做什麼?(這張圖來自互聯網:http://www.kuqin.com/upimg/allimg/120127/2003294U9-1.png)

正因為程序員十分苦逼,所以最近就在研究一些關於薪資的事情,發現果然很多人都是這麼理解的。
看看人家:http://www.iheima.com/html/2012/cyjy_0412/554.html
192萬就實現了N多目標,羨慕嫉妒恨啊。
Tags: 程序员
PHP | 评论:0
| 阅读:17734
Submitted by gouki on 2012, June 23, 11:03 PM
因為本次一周回顧與PHP相關較多,所以就扔在PHP分類裏了
1、yii DB cache,我這個Cache是指在查詢的時候,指定一個Dependceny,可以提高查詢效率,當沒有更新的數據時,就不會查詢數據庫了。在數據量低於10W的庫時,效率很高。但是數據庫的數據超過100萬時,再加上查詢的條件又是帶了id IN (xxx,xxx,xxx)。結果效率並不是特別高。
準備換個方法做緩存
2、本周將以前的API進行了處理。原來為了趕速度,只要是接口就按照ifelse往下寫了。現在發現效率不高,所以又準備重新寫。但為了防止以前的接口不兼容。於是乎這次重寫除了提高效率,還得兼容舊數據。苦。。。所幸都解決了。
正是以前想的,如果你代碼都沒有寫出來,你根本 就沒有機會去優化它,不是嗎?你想的再多,再精妙,如果寫不出。你拿什麼來優化?
其他沒有什麼大事。不過就一些小事。紀錄一下而已
PHP | 评论:0
| 阅读:13943