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

ZendFramework

Zend 2.0的框架改动与1比实在是太大了,当然抛开Namespace不说,即使是应用和架构,都有了一部分调整。
Zend实在太庞大了。用来开发项目不一定是首选。以前都是当成类库来用的,毕竟他实现了几乎目前所需要用到的一切功能,甚至GData之类的接口都全了,你还能奢求什么?
要赶时髦?openID和oauth也有,要实用?连pdf库都有,发邮件、本地化、命令行,应有尽有,不是类库是什么?
不过2.0就不太一样。我随便看了一个DB类,和以前的操作都有点不太一样了。或许是一下子没有适应过来那种newZend_Db_TableGateway之类的调用方式吧
手册在这里:http://packages.zendframework.com/docs/latest/manual/en
下载在这里:http://packages.zendframework.com/

还有一个相对比较实用的wiki:http://framework.zend.com/wiki/display/ZFDEV2/Home
可以看看。2.0的架构和代码还是值得学习的。

Tags: zend, yii

一周回顾

本周没有什么大事发生,只是对于自己来说有几件事情要记住。
1、编码,关于编码这件事,我在文章出现乱码怎么办?已经记录了
2、mongo,虽然很多人说,如果只有一台服务器就不要用mongo了,但是想来想去,我大字段内容过多,而且访问频繁,短时间内居然不能做缓存,这才是我纠结的,毕竟只要做了缓存,那就什么都好说了
3、redis的订阅。我用的是yiiredis的订阅。然后事情就开始纠结了。在yii的event中,我写了一个小函数,将内容再存到redis中,但死活存不进去。可能还是闭包的问题。没有仔细查,实在没时间啊。
   不过本周会测试一下,不用yiiredis组件中自带的订阅,再看一下究竟如何

4、其它就真没大事了

Tags: 一周回顾

SQL to Mongo Mapping Chart

mysql 与 mongo之间是怎么替换的?
官方有一个表格:

SQL Statement Mongo Query Language Statement
CREATE TABLE USERS (a Number, b Number) Implicit or use MongoDB::createCollection().
INSERT INTO USERS VALUES(1,1) $db->users->insert(array("a" => 1, "b" => 1));
SELECT a,b FROM users $db->users->find(array(), array("a" => 1, "b" => 1));
SELECT * FROM users WHERE age=33 $db->users->find(array("age" => 33));
SELECT a,b FROM users WHERE age=33 $db->users->find(array("age" => 33), array("a" => 1, "b" => 1));
SELECT a,b FROM users WHERE age=33 ORDER BY name $db->users->find(array("age" => 33), array("a" => 1, "b" => 1))->sort(array("name" => 1));
SELECT * FROM users WHERE age>33 $db->users->find(array("age" => array('$gt' => 33)));
SELECT * FROM users WHERE age<33 $db->users->find(array("age" => array('$lt' => 33)));
SELECT * FROM users WHERE name LIKE "%Joe%" $db->users->find(array("name" => new MongoRegex("/Joe/")));
SELECT * FROM users WHERE name LIKE "Joe%" $db->users->find(array("name" => new MongoRegex("/^Joe/")));
SELECT * FROM users WHERE age>33 AND age<=40 $db->users->find(array("age" => array('$gt' => 33, '$lte' => 40)));
SELECT * FROM users ORDER BY name DESC $db->users->find()->sort(array("name" => -1));
CREATE INDEX myindexname ON users(name) $db->users->ensureIndex(array("name" => 1));
CREATE INDEX myindexname ON users(name,ts DESC) $db->users->ensureIndex(array("name" => 1, "ts" => -1));
SELECT * FROM users WHERE a=1 and b='q' $db->users->find(array("a" => 1, "b" => "q"));
SELECT * FROM users LIMIT 10 SKIP 20 $db->users->find()->limit(10)->skip(20);
SELECT * FROM users WHERE a=1 or b=2 $db->users->find(array('$or' => array(array("a" => 1), array("b" => 2))));
SELECT * FROM users LIMIT 1 $db->users->find()->limit(1);
EXPLAIN SELECT * FROM users WHERE z=3 $db->users->find(array("z" => 3))->explain()
SELECT DISTINCT last_name FROM users $db->command(array("distinct" => "users", "key" => "last_name"));
SELECT COUNT(*y) FROM users $db->users->count();
SELECT COUNT(*y) FROM users where AGE > 30 $db->users->find(array("age" => array('$gt' => 30)))->count();
SELECT COUNT(AGE) from users $db->users->find(array("age" => array('$exists' => true)))->count();
UPDATE users SET a=1 WHERE b='q' $db->users->update(array("b" => "q"), array('$set' => array("a" => 1)));
UPDATE users SET a=a+2 WHERE b='q' $db->users->update(array("b" => "q"), array('$inc' => array("a" => 2)));
DELETE FROM users WHERE z="abc" $db->users->remove(array("z" => "abc"));


不过,硬要说的话,这个还不全,http://www.mongodb.org/display/DOCS/SQL+to+Mongo+Mapping+Chart,这里有更全的。
在上面的页面还能够讲这个mapping chart导出成pdf。
比如,这个:docs-8716963-090117-10.pdf

Tags: mongo

文章出现乱码怎么办?

文本本来是UTF-8的。但是会出现乱码,类似:
像吉本芭娜娜一æ·ï¼Œåœ¨è¿™ä¸ªä¸–界上,
我最喜欢的地方就是厨房。
—— 李妙生
这种在显示的时候出现很让人郁闷,但不能不解决它,怎么办?写了一个无耻的函数:

XML/HTML代码
  1. function getUtf8Content($content,$default=null){  
  2.         $dContent = utf8_decode($content);  
  3.         if(mb_detect_encoding($dContent) == mb_detect_encoding($content)){//这句话有点妖。多试试就知道了  
  4.             if($default !== null){  
  5.                 $content = $default ;  
  6.             }else{  
  7.                 if(strpos($dContent,"??????")===false){  
  8.                     $content = $dContent;  
  9.                 }  
  10.             }  
  11.         }  
  12.         return $content;  
  13.     }  

不管了,能解决问题就好。。黑黑,不要怕丑

Tags: 乱码

折腾

折腾了很久,VPS又换成了apache,而不再使用lnmp。嗯,nginx确实不错,但我想,apache更容易配置,nginx相对来说配置起来还是有一点的麻烦。不如apache支持的多

比如,Svn就直接支持apache。当然这只是一个很不能说服人的理由,不过,我想配置服务器这玩意,还是怎么熟怎么来吧。
apache优化好了,也不见得就比nginx差到哪里去,当然插件是少了很多。忍忍了

 

Tags: linode