首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java
Dreamweaver和PHP
——一对高效的伙伴

本章内容

l    用CSS和“动态数据”视图可视化动态页面

l    创建和共享自定义的工作区布局

l    介绍用于Mac OS X的选项卡式文档

l    利用“编码”工具栏和“代码折叠”特性来最大限度地利用“代码”视图

l    使用PHP代码补全和代码提示功能

l    利用代码比较实用程序来比较文件

l    决定HTML或XHTML哪种语言适合你

l    为你的页面设置正确的DOCTYPE

如果你已经用过Dreamweaver,那么你极有可能是一名设计师,而不是一名程序员,或者你是一名想把Web设计与编程结合起来的开发人员。尽管本书计划主要集中介绍PHP一方面的内容,但还是打算把构建动态网站的设计和编码两方面都结合起来。Dreamweaver 8非常适合做这项工作,因为它是一种可视化设计工具并且是一种高度先进的编程环境,它把各种高级功能融为一体。

初看上去,Dreamweaver 8与Dreamweaver的前两个版本并无二致——除非你是一名Mac用户(稍后将讨论有关这方面的更多内容);不过,该程序的许多特性已经发生了巨大的变化。对于设计师来说,最令人叫绝的因素可能是改进的CSS呈现,以及称为CSS Layout Visualization的特性,它允许你看到填充和页边空白在什么位置被应用到了许多块元素上。使用PHP时,你会在“代码”视图中花相当多的时间,这也得益于优秀的生产率特性。要完整描述Dreamweaver的这个新版本中的所有改进,将需要几章的篇幅,因此,我们将集中介绍最重要的部分,特别是要从使用PHP的角度来加以介绍。

使用动态代码还意味着要特别注意“设计”视图背后发生的事情。现代的浏览器通常对HTML标记中即使是十分严重的错误也会表现得很宽容,但是对于服务器端语言来说,即使一个逗号位于错误的位置都有可能导致站点崩溃。因此,本章将针对良好的编码实践以及为Web页面选择正确的DOCTYPE提出一些建议。

2.1  Dreamweaver 8的新特性概览

Windows和Mac用户在第一次打开Dreamweaver 8时,很可能会有相反的反应。Windows用户将看到同样有序的工作区和面板框架占据了整个屏幕——这会得到许多人的赞许,但是对于那些渴望再次看到最后一次在Dreamweaver 4中看到的浮动窗口的人来说,则会厌恶这种布局。另一方面,Mac用户将发现他们的浮动窗口不再拘泥于他们过去习惯的那种布局方式。我首先在分辨率设置为1024×768(必需的最小尺寸)的显示器中打开Mac版本,它看起来好像所有内容都被锁定在了与Windows版本相同的固定框架中。但是,第一印象可能会产生误导——Windows和Mac版本现在都可以进行无限的配置。

你可以使用内置的布局或者你自己的设计。不能理解,或者觉得需要处理不同类型的项目?在升级时或者如果你工作在多台计算机上,只需自由地在布局间切换、保存布局,甚至把它们转移到其他的计算机——这在升级时非常方便。本章稍后将描述如何执行该任务。

2.1.1  改进的CSS支持

Dreamweaver 8中最大的飞跃是它处理CSS的方式。新的一体式CSS面板使得创建和控制样式规则要比以往容易得多。“设计”视图大大改进了CSS呈现。这反过来又使得“动态数据”视图成为可视化PHP站点的最终外观的一个更有效的工具。如图2-1所示,在“动态数据”视图中,真实的数据代替了动态生成的内容的占位符,从而使你能够真实地预览页面在浏览器中的样子。它不是一个完美的重现,但是非常接近,并且有许多新的可视化辅助手段,它们允许调整设置,而不必在Dreamweaver和浏览器之间来回切换(第5章将介绍如何使用“动态数据”视图)。

图2-1  Dreamweaver 8的改进的CSS呈现使得有可能精确地可视化动态代码的呈现方式,而不必离开制作环境

2.1.2  更高效的编码环境

“代码”视图也进行了重大的更新。如图2-2所示,可以折叠代码区,这允许同时处理脚本的多个部分,它们相互之间可能间隔上百行;如果你需要折叠区中的内容的快速提示,只需把鼠标指针悬停于上,就会显示前面十几行的代码。在“代码”视图左下方还有一个新增的“编码”工具栏,它把所有最常用的操作都放在一个可以轻松访问的区域内。

图2-2  新增的“代码折叠”特性不仅允许暂时隐藏代码的某些区域,还可以让你通过把鼠标指针悬停在折叠的区域上来检查所隐藏的内容

在处理代码方面的另一个重要改进是可以集成第三方文件比较应用程序,如针对Windows的Beyond Compare或WinMerge,或者针对Mac OS X的FileMerge或BBEdit。这允许你选择文件的两个版本(即使其中一个版本在远程服务器上)并比较它们之间的区别,而无需离开Dreamweaver环境。在本章后面将更详细地描述这些改进。

2.1.3  对PHP 5的支持

与PHP明确相关的变化包括增加了300多个PHP函数的代码提示,这使得Dreamweaver与PHP 5.0的最新特性保持同步。这意味着如果你乐意做一些手工编码工作,就可以使用MySQL Improved (mysqli) PHP扩展以及SQLite,前者可以与MySQL 4.1或更高版本协同工作,后者是一种与PHP 5捆绑的轻型而强大的数据库系统。

不过,Dreamweaver 8仍在其服务器行为中使用原始的MySQL扩展。我认为这是一个明智的决定。即使许多宿主公司已经采用了MySQL 4.1,但是它们迁移到PHP 5的速度要慢得多。原始的MySQL扩展是一个不可缺少的重劳力者,在PHP 5中仍然可用,并且它意味着你不必担心需要根据宿主公司碰巧提供的东西来选择不同的选项。利用Dreamweaver 8构建的PHP网站可以与PHP 4.3.0以上的版本以及MySQL 3.23.31以上的版本协同工作。

有一件事可能令人失望:对于Dreamweaver支持的服务器端语言只有一种新增的服务器行为——XSLT,第12章将介绍该内容。我想看到的是为常用特性[如邮件或创建水平重复显示区域(horizontal looper)]增加的支持。你可以购买商品化扩展来执行该任务,且第10章和第11章将介绍如何使用由InterAKT(www.interaktonline.com)创建的一些令人印象非常深刻的扩展。但是,如果你买不起商品化扩展,也不要担心。可以使用InterAKT扩展的试用版。最重要的是,本书主要强调的是使用Dreamweaver 8的标准特性,并且第5章和第6章将指导你完成对在线表单的动态部分进行手工编码的整个过程,该在线表单把用户评论通过电子邮件直接发送到你的邮箱。

既然其他的改进这么多,Dreamweaver 8能够提供的功能就太丰富了,这使得它成为所有严谨的Web设计师或应用程序开发人员不可或缺的工具。现在让我们更详细地探讨利用PHP来开发站点的最重要的一些特性。

到出版本书时,或者之后不久,将发布PHP 5.1。Dreamweaver 8基于PHP 5.0,因此不支持PDO(PHP数据对象),它是一个高级(在编写本书时,仍然处于试验阶段)接口,用于访问数据库(www.php.net/manual/en/ref.pdo.php)。