《PHP精粹:编写高效PHP代码》——2.1节数据持久化和Web应用程序

简介:

本节书摘来自华章社区《PHP精粹:编写高效PHP代码》一书中的第2章,第2.1节数据持久化和Web应用程序,作者:(美)  Davey Shafik,更多章节内容可以访问云栖社区“华章社区”公众号查看

2.1 数据持久化和Web应用程序
为什么通常在Web应用程序里存储信息,而不是仅仅给Web用户一个简单的静态网页,原因有两个:
1)内容是动态的,可以不断地更新或编辑,或从其他系统提取内容。
2)可为网站访问者显示用户特定的内容。
第一点与CMS(Content Management System, 内容管理系统)或类似的应用程序有关。当一个网站包含会员区时,会员通过密码登录访问,而且网页添加了很多个性化元素,例如用其用户名输出问候语,并且显示他们的个人信息(查看View Profile或Edit Profile页),第二点由此出现。
我们日益远离页面刚建好就发布的那个时代,相反,我们将系统填入Web,系统通过基于网络的工具管理内容。即使没有用户登录的页面也将从数据库提取内容显示元素、导航和其他元素。用PHP仅仅发送联系表格邮件的日子一去不复返!
当使用用户数据时,也在逐渐了解Web无状态的天性。这表明同一个用户的连续请求之间没有任何联系;每个进入的请求只是请求,为了计算出该做什么,这个服务器接收和响应的请求仅使用与它一同到达的信息。与传统的桌面应用程序相比,这是一个直接的差异,用户登录一次,客户端和服务器之间的连接在会话期间将会适当地保持。使用Web表明,为了已生成的请求,我们需要学习有效适当地存储和加载数据到服务器。

相关文章
|
6月前
|
弹性计算 监控 网络安全
如何轻松使用AWS Web应用程序防火墙?
AWS WAF是Web应用防火墙,可防护常见网络攻击。通过创建Web ACL并设置规则,保护CloudFront、API网关、负载均衡器等资源。支持自定义规则与OWASP预定义规则集,结合CloudWatch实现监控日志,提升应用安全性和稳定性。
|
11月前
|
消息中间件 缓存 弹性计算
纯PHP+MySQL手搓高性能论坛系统!代码精简,拒绝臃肿
本内容分享了一套经实战验证的社交系统架构设计,支撑从1到100万用户的发展,并历经6次流量洪峰考验。架构涵盖客户端层(App、小程序、公众号)、接入层(API网关、负载均衡、CDN)、业务服务层(用户、内容、关系、消息等服务)、数据层(MySQL、Redis、MongoDB等)及运维监控层(日志、监控、告警)。核心设计包括数据库分库分表、多级缓存体系、消息队列削峰填谷、CQRS模式与热点数据动态缓存。同时提供应对流量洪峰的弹性伸缩方案及降级熔断机制,并通过Prometheus实现全链路监控。开源建议结构清晰,适合大型社交平台构建与优化。
420 11
|
9月前
|
JSON 数据处理 PHP
PHP数组处理技巧:高效操作数据集合
PHP数组处理技巧:高效操作数据集合
|
9月前
|
JSON 安全 大数据
PHP中的数组处理艺术:灵活高效的数据操作
PHP中的数组处理艺术:灵活高效的数据操作
|
安全 JavaScript 前端开发
AppSpider 7.5.020 发布 - Web 应用程序安全测试
AppSpider 7.5.020 for Windows - Web 应用程序安全测试
164 0
|
9月前
|
JSON 定位技术 PHP
PHP技巧:解析JSON及提取数据
这就是在PHP世界里探索JSON数据的艺术。这场狩猎不仅仅是为了获得数据,而是一种透彻理解数据结构的行动,让数据在你的编码海洋中畅游。通过这次冒险,你已经掌握了打开数据宝箱的钥匙。紧握它,让你在编程世界中随心所欲地航行。
275 67
|
6月前
|
存储 安全 Java
如何在 Spring Web 应用程序中使用 @SessionScope 和 @RequestScope
Spring框架中的`@SessionScope`和`@RequestScope`注解用于管理Web应用中的状态。`@SessionScope`绑定HTTP会话生命周期,适用于用户特定数据,如购物车;`@RequestScope`限定于单个请求,适合无状态、线程安全的操作,如日志记录。合理选择作用域能提升应用性能与可维护性。
278 1
|
8月前
|
存储 缓存 安全
php项目源码加密之Zend Guard Loader加密的代码解密可能性很小-优雅草卓伊凡
php项目源码加密之Zend Guard Loader加密的代码解密可能性很小-优雅草卓伊凡
376 2
|
10月前
|
XML 安全 前端开发
一行代码搞定禁用 web 开发者工具
在如今的互联网时代,网页源码的保护显得尤为重要,特别是前端代码,几乎就是明文展示,很容易造成源码泄露,黑客和恶意用户往往会利用浏览器的开发者工具来窃取网站的敏感信息。为了有效防止用户打开浏览器的 Web 开发者工具面板,今天推荐一个不错的 npm 库,可以帮助开发者更好地保护自己的网站源码,本文将介绍该库的功能和使用方法。 功能介绍 npm 库名称:disable-devtool,github 路径:/theajack/disable-devtool。从 f12 按钮,右键单击和浏览器菜单都可以禁用 Web 开发工具。 🚀 一行代码搞定禁用 web 开发者工具 该库有以下特性: • 支持可配
930 22
|
8月前
|
SQL 敏捷开发 安全
PHP 的精髓:灵活高效,为 Web 而生
PHP 的精髓:灵活高效,为 Web 而生