北斗有七星
地球有七洲
一周有七天
音高有七阶
休妻有七条
浮屠有七级
PHP只能发布到7
北斗有七星
地球有七洲
一周有七天
音高有七阶
休妻有七条
浮屠有七级
PHP只能发布到7
因为Drupal 8, 所以又要多学一种PHP框架。
Drupal 8在2014年10月发布beta版,正式发布时间估计是2015年9月21日(参考:https://drupalreleasedate.com/)
有的,参考:https://groups.drupal.org/imp。不过笔者直觉上觉得代价会很大,还不如重写。
在叙述完7个使用Drupal的理由之后,我们公平一点,说7个不使用Drupal的理由:
Drupal很复杂,很难入门。即使它具有不需要编程的CMS特性,对于懂编程的人来说也很难学。Drupal作为CMS,其易学程度绝对和Wordpress不是一个档次。
国内很少人用Drupal,想找本像样的中文书籍都难。运气好能找到的很可能只是讲CMS部分的书籍,而不涉及怎样编写自定义模块内容。换句话说,要想学习Drupal,要直接学习英文的学习资料。
在国内找个Drupal程序员很困难。
不过,需要说明的是,容易入门的东西,精通了也不会让我们有什么过人之处。难学的东西还有很多人学说明学了它确实很有用。
做了一个简单的测试,打开一个很干净的页面,需要做25秒数据库连接,尽管只需要9ms(当数据查询繁忙的时候很可能不止这个时间)。启用的模块越多,系统运行越慢。我做过的一个很简单的网站数据库里有65张表,一个复杂一些的网站有250张表,这对系统资源是很大的压力。
Drupal是一个基于PHP语言编写的开源内容管理框架(CMF,CMS+Framework),它既可以让人不需要编写代码就搭建起一个网站,又可以像PHP框架那样编写复杂的自定义功能模块。
全球有2%【数据来源】的网站使用Drupal创建。它具有以下10大优点:
截止至2015年5月,一共有38,140名开发者为Drupal贡献代码。拥有超过30000个模块和2000个主题。我们可以边开发自己的网站,边学习别人的代码。遇到问题,可以得到庞大的社区支持。
使用Drupal可以搭建任何类型的网站:门户网站、博客、论坛、购物网站、新闻网站等都是很简单的事情,每添加一种功能只需要启用若干模块,然后用一定的方式和现有系统连接起来。如果功能很特殊,可以自己添加新模块,就像使用普通PHP框架那样实现定制的功能就可以了。
理解本文需要先知道如何创建一个Drupal 7模块。
Drupal 7的文件API分为unmanaged file和managed file两种类型,managed file会在数据库中记录文件的信息及引用记录。
Drupal文件对象有一个uri属性,它的形式如public://myfile.jpg,通过file_create_url($file->uri)可以把uri转换成web可访问的路径,如http://howto.eguidedog.net/sites/default/files/myfile.jpg
Drupal内建了public、private和temporary流报装器(stream wrapper),PHP文件操作函数可以直接操作这些uri,例如我们可以通过filesize(‘public://myfile.jpg')获取文件大小,而不需要先转换成本地文件的地址。
Drupal中的private目录应该是放在一个不能直接从Web访问的目录,其内容通过PHP返回(这里有一个副作用是增加了系统开销)。
在表单生成函数中添加文件控件:
最新评论