2010-05-07 92 views
3

我已经研究过设计模式,并希望使用它们来编写开源库(而不是应用程序)。写入php库的指南?

但我从来没有编码的图书馆前,不知道我应该包括的文件,我应该有加载一切还是应该每类加载自己的类,它们依赖于等引导文件

有没有任何教程在从开始到芬兰语的PHP编写库?

感谢

+3

没有太多的答案,而是一个普遍的建议:一个好的地方,从其他开源库。如果你发现一个有信誉的项目,你很可能会有一个很好的例子来建立你的开源库。祝你好运! – 2010-05-08 03:26:10

回答

3

我不能指向你的教程,但有一个即插即用库是拥有每类文件一类,让用户使用__autoload选择最简单的方式只需实例化您的类而不必更改其现有代码中的任何内容。这种方式对大多数开发人员来说是最容易获得

此方法仍允许您创建一个包含所有其他类文件的“独立”包含文件。

其他选项包括将其制作成PEAR包或要求用户将文件放入包含路径中。然而,对于那些无法访问除自己的public_html文件夹之外的任何人(例如共享主机)的人来说,这并不是最佳选择。

+0

我假设你是PEAR,而不是PERL。 – 2010-05-07 23:43:54

1

我给你指出了Zend Framework。您可以将其用作整个框架,但也可以使用选定的组件。是的,我认为对图书馆而言,自动加载是关键。

1

如果你的库做字符串任何检查或处理,想想自己是否注定要的字节文本字符字符串的字符串,如果是后者,只使用multibyte string功能与他们,不是普通的PHP字符串函数。否则,您的图书馆将无法用于需要处理Unicode文本的人员。

2

你应该看看Solarphp Framework。它像每个其他框架一样解决一些标准问题,例如自动加载,依赖注入等等。我从中学到了很多关于编写好的PHP代码的知识。如果您有任何疑问,请联系freenode

-1

有许多PHP框架可用,它们可以帮助您构建库文件。 但是,我总是喜欢MVC,比如具有更多全局接受格式的钩子函数的模型。下面的几个例子...

 
# o  = Object 
# r  = Return 
# a  = Array 
# e  = Element 
# g = Global declaration 
# hook = a function which can be used for hooking with other functions 
# call = a function which can be used for making call from client to server system 
# sync = a function which can be used for SYNC