百度空间 | 百度首页 
 
文章列表
 
您正在查看 "Php" 分类下的文章

2009-10-09 23:09
        因为一些原因,花了一天时间将原来的基于XML-RPC的调用改为直接通过TCP协议完成,不再走HTTP协议(不再使用繁重的XML通讯,采用phpserializer 传输)。服务基于MINA,实现特定的Codec也不困难,但最麻烦的事情在于:在Linux下,读取一个socket中的内容,无论是采用 fread($sock, 4096) 还是 stream_socket_recvfrom($sock, 4096) 在Linux (Windows没问题)下都不能保证正确的读出指定长度(4096byte)。也就是说:
类别:Php | 评论(0) | 浏览()
 
2009-08-24 18:22
     一直在Oracle中写存储过程,直到发现反恐居然也使用MySQL写存储过程。

编写MySQL的存储过程很容易。例如,创建表结构:

CREATE TABLE IF NOT EXISTS `ooo` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`sex` char(1) CHARACTER SET gb2312 NOT NULL,
`age` smallint(3) unsigned NOT NULL,
`money` float NOT NULL,
`create_time` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=gbk

编写存储过程创建测试
类别:Php | 评论(1) | 浏览()
 
2008-11-07 14:17

在邮件列表的帮助下,终于成功的定义了一个类
(方法声明、宏)



类方法入口表:

类定义:

类别:Php | 评论(1) | 浏览()
 
2008-06-02 21:50

        偶尔上pecl看了看(很久不上了),居然发现llvm在pecl上居然已经放了占位符了,期待啊,真让人激动,所以又到其他的地方看了看,居然发现了一个怪胎。vld,pecl上的介绍是

        The Vulcan Logic Disassembler hooks into the Zend Engine and dumps all the opcodes (execution units) of a script.(这个玩意儿可以深入Zend Engine将所有的opcodes(代码的执行单元)弄出来给你看看)

     

类别:Php | 评论(3) | 浏览()
 
2008-03-24 15:08

我一直不认为自己是个老鸟,也一直避免给新人以意见,这段时间忙于找工作,也很少光顾论坛了。偶尔回学校论坛,看到有人转帖了一个关于PHP文件上传的文章,文章很旧,应该是 PHP3 时代的例子了,于是本人写了这篇文章,有点小题大作,还望见谅。

【为什么分离逻辑和视图】

很多人讨厌使用模板,讨厌Smarty,虽然我觉得Smarty是我见过的最好的设计之一,但我尊重他们的意见,不强求使用模板解释引擎。但是在如下例子中,我将讲述一下分离逻辑和视图的好处。

例子还是这个:PHP文件上传。

场景1:不分

类别:Php | 评论(2) | 浏览()
 
2008-02-14 11:19

这是Zend上那篇文章的第二部分 http://devzone.zend.com/article/2996-Generating-and-Validating-Web-Forms-With-PEAR-HTML_QuickForm-part-2

1、使用Group

这个其实不算麻

类别:Php | 评论(0) | 浏览()
 
2008-02-13 17:37

这是Zend上的一篇文章 http://devzone.zend.com/article/2699-Generating-and-Validating-Web-Forms-With-PEAR-HTML_QuickForm ,阅读后笔记如下(不算翻译,但应该可以代替原文)

本文不准备系统的介绍Pear HTML_QuickForm的基本用法,对于这个,您可以访问 Haohappy 的博客。

准备:

PHP5 (本人使用 PHP5.30 dev)
Pear
HTML Common
HTML_QuickForm 3.20
Zend Frame

类别:Php | 评论(0) | 浏览()
 
2008-01-02 16:05

看见agxle blog中有篇C#目录遍历的文章,想想PHP这方面的还真的很少,多数都是函数递归直接echo的。

缺少这方面的文章主要是技术含量太低吧,这里给出两种方法遍历目录:

函数dir_iterator($path) 递归遍历目录,并将 目录下所有文件路径作为一个数组返回
第二种方法,不使用递归,采用for循环遍历目录(这里采用了类,您可以使用 Dir_Iterator::getFiles() 以及 Dir_terator

类别:Php | 评论(1) | 浏览()
 
2007-12-17 11:04

早先问过BleakWind,他认为,给别人做的话MySQL内存表做会话比较好一些,因为MySQL内存表做Session更容易维护(可以制作安装脚本)。这个周末,我进行了一些测试,测试MySQL MyISAM表做会话(对时间给不给索引)、内存表做会话、MemCache做会话的效率比较。

定义会话Session类:

定义会话处理器接

类别:Php | 评论(6) | 浏览()
 
2007-12-11 18:48

这次的项目要求六种语言。我还是采用了老行头、仍然是 Zend_Framework(虽然上个中 Code Ignitor给我的影响实在是太好了,不过毕竟不太容易扩展,扩展多了容易乱) + Smarty。

语言翻译使用 Zend Translate ,不过要将 Zend_Translate 直接整合到 Smarty 的模板中去则不是一件容易事(register_object 之类的写起来太过麻烦)。

好消息是 Smarty 是一个高扩展性的模板引擎,可以自己创建一个种标签表示其中的东西需要被Translate,然后创建一个 prefilter ,注册进去,在 Smarty 的模板编译之前将我们自创的Transla

类别:Php | 评论(3) | 浏览()
 
2007-11-21 17:18

多数时候简单的pack ,unpack 基本上不会出现问题。例如下面的代码也运行良好:

<?php

$pack = pack('a10', 'wps2000') . pack('a3', '男') . pack('S', 23);
$unpack = unpack('a10name/a3sex/Sage', $pack);
echo 'Name is ' . $unpack['name'] . ' and sex is ' . $unpack['sex'] . ' and age is ' . $unpack['age'] . '
';

echo strlen($unpack['name']);

=================================================================

运行结果 strlen得到正确的 7 而非 10.

类别:Php | 评论(0) | 浏览()
 
2007-11-21 16:56

这几天在论坛上看见某人发了篇PHP设置只读属性的文章,其实就是翻译的手册。下面trooman说,使用Reflection获取比较拽!

试了一下,利用反射获取对象的private属性果然还是搞不通滴(PHP还是想到了,防止有人会绕弯)。Every Thing Is Ok!(要不通过反射可以setValue ,天下足以大乱了)

<?php

class A
{
private $_a = 10;
private $_b = 20;
public $_d = 13;
}
$a = new A();
$reflector = new ReflectionObject($a);
$methods = arr

类别:Php | 评论(1) | 浏览()
 
2007-11-20 11:26

我们公司做了个使用Flash做视频聊天的项目,Flash是外包的,amfphp的服务还得我自己写。我比较讨厌amfphp低版本的mathod申明,所以采用了纯PHP5的1.92,毕竟是Beta版本,Bug还是蛮多的

一个月前就发现了,这次做外包的那位老大再次遇到这个问题(是别人的项目了):

amfphp1.92 传递给他的参数,如果是字符串的话,起始的字符串是一定不能以数字开头的,否则貌似他自动会int一次,然后除了最前面的数字被保留了外,其他的全部为被抹掉。

恰好我们公司的密码等信息是mcrypt加密之后(二进制)然后我unpack为

类别:Php | 评论(2) | 浏览()
 
2007-10-18 12:15

看了看我的博客上的访问列表,有个aicom(实际智能)的网友,于是进到他的博客去看了看。其中有一片 PHP递归 的帖子,代码写的比较含糊,貌似是求菲波拉契数列的,不过与题目却没什么关系,根本没有用到递归:

原文您可以到他的博客上去看,不过在这里我想说的是,递归效率实在是太低了。低到无法忍受的地步了。

aicom原文中的代码(循环做的)执行效率(show(45))(使用 gettimeofday(true) 环绕 echo show((in

类别:Php | 评论(7) | 浏览()
 
2007-10-17 12:46

我对这个不是太感冒,可能跟我一向没有做过太大负载的网站有关吧。根据我的经验,MySQL比我们想象的要强一些,很快。PHP + MySQL已经够快了,没必要追求那点人根本感觉不到的速度差异而丧失实时性。

但是貌似这个世界上抱有和我一样想法的人不是太多。还是有很多人在对这个发帖、回帖。

这里,我提供另外一种思路,不需要对原有的程序做多大更改实现页面的Cache。

库:

LibCache.php

类别:Php | 评论(1) | 浏览()
 
     
 
 
文章分类
 
 
 
 
 
Php(16)
 
     
 
文章存档
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
     
 
最新文章评论
   

高手啊!我还真没用过呢。学习了!
 
 
 
 

回复Zhangsilly:他们当然是保证正确的结果的情况的前提下。
 
     


©2009 Baidu