zendframework官方入门手册(编辑修改稿)内容摘要:

公共的功能setComment(文本美元)14. 公共的功能getComment()15. 16. 公共功能setEmail(电子邮件)17. 公共功能getEmail()18. 19. 公共功能setCreated(TS)20. getCreated公共函数()21. 22. 公共功能SETID(ID)23. 公共功能的getId()24. }25. 26. 类Application_Model_GuestbookMapper27. {28. 公共函数保存(Application_Model_Guestbook$留言)29. 公共功能找到($ ID)30. 公共功能fetchAll()31. }__get()和__set()将提供方便的机制,为我们访问个别项目的性质,并代理其他getter和setter。 他们也将有助于确保我们的白名单的唯一属性将对象。 找到()和fetchAll()提供的能力,以获取一个条目或所有条目,同时保存()节约数据存储的条目。 现在,从这里,我们可以开始思考建立数据库。 首先,我们需要初始化DB资源。 与资源布局和视图,我们可以提供的配置DB资源。 我们可以做的ZF配置DB适配器命令:1. %ZF配置DB适配器\2. 39。 适配器= PDO_SQLITE及DBNAME = APPLICATION_PATH“/。 /数据/ DB / ”\3. 生产4. 用于生产的DB配置已被写入到应用程序配置文件。 5. 6. %ZF配置DB适配器\7. 39。 适配器= PDO_SQLITE及DBNAME = APPLICATION_PATH“/ /数据/ DB /留言 ”\8. 测试9. 用于生产的DB配置已被写入到应用程序配置文件。 10. 11. %ZF配置DB适配器\12. 39。 适配器= PDO_SQLITE及DBNAME = APPLICATION_PATH“/ /数据/ DB /留言 ”\13. 发展14. 用于生产的DB配置已被写入到应用程序配置文件。 现在,编辑/ CONFIGS /,您的应用程序,在这里你会看到在适当的部分添加以下行。 1.。 应用/ CONFIGS的/2. 3. [生产]4.。 ......5.。 适配器=“PDO_SQLITE”6.。 DBNAME=APPLICATION_PATH“/。 /数据/ DB / ”7. 8. [测试:生产]9.。 ......10.。 适配器=“PDO_SQLITE”11.。 DBNAME=APPLICATION_PATH“/。 /数据/ DB /留言 ”12. 13. [发展:生产]14.。 ......15.。 适配器=“PDO_SQLITE”16.。 DBNAME=APPLICATION_PATH“/。 /数据/ DB /留言 ”你的最终配置文件应该看起来如下:1.。 应用/ CONFIGS的/2. 3. [生产]4. phpSettings。 display_startup_errors=05. phpSettings。 的display_errors=06. 引导路径=APPLICATION_PATH“/ ”7. 引导。 类=“引导”8. appnamespace=“应用程序”9.。 controllerDirectory=APPLICATION_PATH“/控制器”10.。 displayExceptions=011.。 LayoutPath的=APPLICATION_PATH“/布局/脚本”12. []=13.。 适配器=“PDO_SQLITE”14.。 DBNAME=APPLICATION_PATH“/。 /数据/ DB / ”15. 16. [分期:生产]17. 18. [测试:生产]19. phpSettings。 display_startup_errors=120. phpSettings。 的display_errors=121.。 适配器=“PDO_SQLITE”22.。 DBNAME=APPLICATION_PATH“/。 /数据/ DB /留言 ”23. 24. [发展:生产]25. phpSettings。 display_startup_errors=126. phpSettings。 的display_errors=127.。 适配器=“PDO_SQLITE”28.。 DBNAME=APPLICATION_PATH“/。 /数据/ DB /留言 ”请注意,数据库(S)将在存储数据/ DB /。 创建这些目录,并让他们写世界。 在类Unix系统,你可以做如下:1. MKDIRP%chmod R的数据/ DB。 + RWX数据在Windows中,您将需要在资源管理器中创建的目录,并设置权限,以允许任何人都可以写的目录。 在这一点上,我们有一个数据库连接,在我们的例子中,它连接到一个SQLite数据库位于内我们的应用程序/数据/目录。 所以,让我们设计一个简单的表格,将举行我们的留言簿条目。 1. 脚本/ 2. 3. 您将需要加载与此SQL数据库架构。 4. 5. 创建表的留言(6. ID的INTEGERNOTNULL,PRIMARYKEYAUTOINCREMENT的,7. 电子邮件VARCHAR(32)NOTNULL默认“no@8. 评论文字为NULL,9. 创建的DATETIMENOTNULL10. )11. 12. 创建索引“身份证”“留言”(“ID”)和,使我们可以有一些工作数据框,让我们创建信息,使我们的应用程序有趣的几行。 1. 脚本/ 2. 3. 你可以开始填充用下面的SQL语句的数据库。 4. 5. INSERT到 留言(电子邮件,注释,创建)值6. (39。 @ ,7. “你好。 ”希望你享受这个范例ZF应用程序。 “8. 的DATETIME(39。 现在39。 ))9. INSERT到 留言(电子邮件,注释,创建)值10. (“foo@39。 ,11. “巴兹巴兹巴兹,巴兹巴兹巴兹巴兹BAZ BAZ巴兹巴兹。 12. 的DATETIME(39。 现在39。 ))现在,我们有两个架构和定义一些数据。 让我们一起得到一个脚本,我们现在可以执行建立这个数据库。 当然,这并不需要在生产,但这个脚本将帮助开发人员建立了本地数据库的要求,使他们能够有充分工作的应用程序。 创建含有下列内容的脚本/ :1. / /脚本/ 2. 3. / **4. *创建和装载数据库的脚本5. * /6. 7. / /初始化应用程序的路径和自动装填8. 定义的(39。 APPLICATION_PATH39。 )9. | |定义(39。 APPLICATION_PATH“,真实路径(目录名(__ FILE__)。 39。 / /应用程序。 “ ))10. set_include_path(破灭(PATH_SEPARATOR,阵列(11. APPLICATION_PATH39。 /。 /库“,12. get_include_path()13. )))。 14. “的Zend /装载机/ ”15. Zend_Loader_Autoloader ::的getInstance()16. 17. / /定义一些CLI选项18. getopt的=新Zend_Console_Getopt的(阵列(19. “withdata | W39。 =39。 与样本数据加载数据库“,20. ENV | ES39。 =39。 应用环境,为创建数据库(默认的发展)“,21. “帮助| H39。 ​​=39。 帮助使用消息“,22. ))。 23. 尝试{24. $ getopt的 的parse()25. }渔获(Zend_Console_Getopt_Exception$){26. / /错误选项通过:报告使用27. 回声$ E getUsageMessage()28. 返回false。 29. }30. 31. / /如果请求帮助,报告使用消息32. ($ getopt的 getOption(39。 H39。 )){33. 呼应美元getopt的 getUsageMessage()34. 返回true。 35. }36. 37. / /初始化基于CLI选项的存在或没有值38. 美元withData=$ getopt的 getOption(“W”)39. $ ENV =$ getopt的 getOption(39。 E39。 )40. 定义的(39。 APPLICATION_ENV39。 )41. | |定义(39。 APPLICATION_ENV“ ,(空===$ ENV)。 39。 发展39。 :$ ENV)42. 43. / /初始化Zend_Application的44. 应用=新Zend_Application(美元45. APPLICATION_ENV,46. APPLICATION_PATH。 39。 / CONFIGS /47. )48. 49. / /初始化和检索数据库资源50. 引导=$应用 getBootstrap()51. 为引导引导(“DB”)52. 美元dbAdapter=$引导 的getResource(“DB”)53. 54. / /让用户知道什么(我们实际上是创建一个55. / /数据库在这里)56. (“测试”。 = APPLICATION_ENV){57. 回声“编写数据库留言簿(ControlC来取消):”PHP_EOL。 58. ($=5$ X0$ X){59. 回声$ X“\ R“睡眠(1)60. }61. }62. 63. / /检查看到,如果我们有一个数据库文件已64. $选项=$引导 getOption(39。 资源39。 )65. $ DBFILE =$选项[39。 DB39。 ][39。 参数39。 ][39。 DBNAME39。 ]66. (file_exists($ DBFILE)){67. 的unlink($ DBFILE)68. }69. 70. / /执行此块加载的实际报表71. / /模式文件。 72. 尝试{73. schemaSql美元=file_get_contents(目录名(__ FILE__)。 39。 / 39。 )74. / /使用直接连接到批量加载SQL75. 美元dbAdapter 的getConnection() EXEC($ schemaSql)的76. CHMOD($ DBFILE,0666)77. 78. (“测试”。 = APPLICATION_ENV){79. 回声PHP_EOL。 80. 回声“数据库创建”81. 回声PHP_EOL。 82. }83. 84. ($ withData){85. data。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。