The solution about 'Zend Studio: svn: This client is
too old to work with working copy' :
Zend Studio ships with a cvs and svn clients which allows you to
commit directly from the editor.
However, when you start using TortoiseSVN and perform an update to
a checked out code, TortoiseSVN will update the format of .svn
files, that’s why you see “svn: This client is too old to work with
working copy ...”.
Solution:
Download and Install CollabNet Subversion Command-Line Client
for Windows
Tell Zend Studio that you want to use a different svn
binary.
Go to Tools -> Preferences -> Source Control
[General Settings]
change old svn path:
C:\Program
Files\Zend\ZendStudio-5.5.1\bin\SourceControl\svn\svn.exe
to the new path where you just installed the client. Default as
fol
迅雷也让我抓狂一次(2008-11-21 19:18)
老早以前就下了个wampp装上了,可当时死活就是启动不了Apache服务。因为我所有的工作一般都直接在服务器上来做,所以也就没跟他较劲,暂且搁置了。今天突然想在本地搭建一个开发环境,就再次想起这个事了。
查了一下事件日志,说是80端口被占。我印象当中,apache无法启动的原因通常是和IIS的端口冲突。可是,我的系统压根就没装过IIS啊。真是邪门了。。。
进入DOS命令行窗口,输入命令 netstat
-anb 真相大白。原来,是垃圾迅雷霸占了80端口!!关了迅雷,一切正常。
'餐厅' --> 'Translate server error'

对于这样的牛人,我向来都是致以崇高的敬意和无上的敬仰,毫无掩饰。
Orz Orz Orz 拜之!
改变互联网的PHP程序(2008-06-26 12:40)
从数据库管理到在线购物,从博客到电子邮件,开放源代码的PHP程序数不胜数。从1998年到现在,十年的热情与坚持、良好的软件架构、团队协作和创新理念,造就了一批优秀的PHP程序。下面让我们来看看互联网上有史以来最具影响力的PHP程序:
1998
PHP中extract()方法的实例(2008-05-16 15:51)
<?php
$size = 'large';
$var_array = array ('color' => 'blue',
'size' => 'medium',
'shape' => 'sphere');
extract ($var_array, EXTR_PREFIX_SAME, 'wddx');
print '$color, $size, $shape, $wddx_size\n';
?>
以上例子将产生:
blue, large, sphere, medium
extract函数格式如下:
int extract ( array var_array [, int extract_type [, string
prefix]])
本函数用来将变量从数组中导入到当前的符号表中。
extract_type有下面几种:
EXTR_OVERWRITE
如果有冲突,覆盖已有的变量。
EXTR_SKIP
如果有冲突,不覆盖已有的变量。
EXTR_PREFIX_SAME
如果有冲突,在变量名前加上前缀 prefix。
EXTR_PREFIX_ALL
给所有变量名加上前缀 prefix。自 PHP 4.0.5 起这也包括了对数字索引的处理。
EXTR_PREFIX_INVALID
仅在非法/数字的变量名前加上前缀 prefix。本标记是 PHP 4.0.5 新加的。
EXTR_IF_EXISTS
仅在当前符
1.永不寄希望于风险投资和他人帮助
2.把产品和服务的质量视如自己的生命
3.建立绝对高效但绝对精简的核心团队和营销团队
4.永不把重要的事交给不确定的人去做
5.学会花钱
Discuz论坛结构(2008-05-08 15:19)
前言:为方便互联网数万Discuz!爱好者,更加深入了解Discuz!软件,本人在熟悉Discuz!过程中,顺便将个人经验写给大家。本贴内容由本人定期更新。本贴只介绍Discuz!中部分技术点,本贴紧属个人观点,不足之处,请各位多多指教,在下先此谢过!。“Discuz!”在下文中简称“DZ”。要弄DZ二次开发,必须至少具备如下技能:
1) 能够理很好理解MVC构架的原理(虽然DZ不是MVC架构的)
2) 扎实的PHP基础,熟悉结构化程序,OOP程序的写法及应用
3) 熟悉MYSQL就用,掌握SQL语言,懂SQL优化者更佳
4) 熟悉使用Discuz!的各项功能
一) Discuz!的文件系统目录
注:想搞DZ开发,就得弄懂DZ中每个文件的功能。
a) Admin:后台管理功能模块
b) Api:DZ系统与其它系统之间接口程序
c) Archiver:DZ中,用以搜索引擎优化的无图版
d) Attachments:DZ中 ,用户上传附件的存放目录
e) Customavatars:DZ中,用户自定义头像的目录
f) Forumdata:DZ缓存数据的存放目录
g) Images:DZ模板中的图片存放目录
h) Include:DZ常用函数库,基本功能模块目录
i) Ipdata:DZ统计IP来路用的数据
j) Plugins:DZ插件信
echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)
print() 只能打印出简单类型变量的值(如int,string)
print_r() 可以打印出复杂类型变量的值(如数组,对象)
echo 输出一个或者多个字符串
echo -- 输出一个或者多个字符串
Descrīption
void echo ( string arg1 [, string ...] ) //返回值为空
echo '你好',' 朋友';
print --输出一个字符串
Descrīption
int print ( string arg )//返回值为整形
print '你好朋友';
可以进行下面操作
$name=print 'nihao \n';
$str = 'test print value is $name .';
eval_r('\$print=\'$str\';');
echo $print;
print_r -- 打印关于变量的易于理解的信息。
bool print_r ( mixed expression_r [, bool return] )
//返回值是布尔型的,参数是mix类型的,可以是字符串,整形,数组,对象类print_r()
显示关于一个变量的易于理解的信息。如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是
require() 和 include()
除了怎样处理失败之外在各方面都完全一样。include() 产生一个警告而 require()
则导致一个致命错误。换句话说,如果你想在丢失文件时停止处理页面,那就别犹豫了,用 require()
吧。include() 就不是这样,脚本会继续运行。同时也要确认设置了合适的include_path。
就是说再解析程序时即读取require的文件,而不是解析后,
如果不能读取到被require的文件,就不能进行下一步动作。
所以,不被正确包含就会导致程序的文件,用require比较好。
可能效率上也略微高点。
require() 无论如何都会包含文件,而 include() 可以有选择地包含:
1. <?php
2. if(FALSE){
3. require('x.php');
4. }
5. if(FALSE){
6. include('s.php');
7. }
8. ?>
x.php 一定会被
摘自 jsframework 框架:
window['MzBrowser']={};(function()
{
if(MzBrowser.platform) return;
var ua = window.navigator.userAgent;
MzBrowser.platform = window.navigator.platform;
MzBrowser.firefox = ua.indexOf('Firefox')>0;
MzBrowser.opera = typeof(window.opera)=='object';
MzBrowser.ie = !MzBrowser.opera &&
ua.indexOf('MSIE')>0;
MzBrowser.mozilla = window.navigator.product ==
'Gecko';
MzBrowser.netscape=
window.navigator.vendor=='Netscape';
MzBrowser.gecko = ua.indexOf('Gecko')>-1 &&
ua.indexOf('KHTML')==-1;
MzBrowser.safari = ua.indexOf('Safari')>-1;
if(MzBrowser.firefox) var re =
/Firefox(\s|\/)(\d+(\.\d+)?)/;
else if(MzBrowser.ie) var re = /MSIE( )(\d+(\.\d+)?)/;
else if(MzBrowser.opera) var re =
/Opera(\s|\/)(\d+(\.\d+)?)/;
else if(MzBrowser.netsca