热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php的扩展和嵌入--总纲_PHP教程

php的扩展和嵌入--总纲。初步接触了php开发以及php扩展的相关内容,发现extendingandembededphp这本书很不错,很多问题也讲的非常透彻。这里把读到的一些书中的内容
初步接触了php开发以及php扩展的相关内容,发现extending and embeded php这本书很不错,很多问题也讲的非常透彻。这里把读到的一些书中的内容和自己的实践结合起来展示一下,既是给自己留档,也是抛砖引玉,期待php大牛的指导。

extending and embeded php这本书还有一个中文版,有些东西新一些,也可以参考下:
http://www.walu.cc/phpbook/preface.md

这本书主要讲两个方面:
  • 如何通过添加函数、类、资源和流的方式来扩展php

  • 如何把php语言嵌入到其他应用中去 那么为什么需要php扩展呢?:
    • 连接额外的库,并以api的形式提供给用户空间的脚本。比如被封装好的mysql
      • 是在第三方的库和php的核心之间提供一种扩展,因此php被称为是胶水语言
      • 进行特殊的内部操作,比如声明超级变量,用户空间因为安全原因是有限制的。比如php的advanced php debugger 和runkit主要就是干这个的
      • 速度原因:令牌化、编译、运行,Opcode可以缩减前两步,但是执行这一步的话还是变成C code比较好。
      • 在不暴露出源码的情况下提供功能
        下图中给出了php的总体结构:
        \
        其中各部分模块的功能如下:
        SAPI:是跟web server的接口层 PHP Core:对于核心事件的连接层,处理类似于文件处理、错误处理这类操作 Zend Engine:把脚本编译成机器语言,执行bytecode,读入写出用户空间变量,控制程序流,解析扩展。 TSRM:thread safe resource management:使得一个单个的php实例具有能够同时处理很多独立的请求的能力 这本书分成了三个部分,第一个部分是对php的重新介绍,主要叙述了php的解释器如何黏合在一起。第二个部分则主要在讲php的扩展,所涉及的方面如下:
        • PHP API 一些php内部的函数和宏
        • 如何把php脚本转换成c code:每个php的脚本的背后都牵涉到了c语言的相应处理,这种对应关系对扩展的开发十分有用
        • 执行那些用户空间不可能的操作:很多时候需要执行一些类似于超级变量这种在用户态无法完成的动作,这个时候需要利用扩展进行相应的处理。 而第三个部分则是叙述如何把php嵌入到相应的应用中去:
          • 首先是给应用加上相应的php支持
          • 其次是充分利用php相应的安全特性
          • 最后则是说明php如何同时处理多个请求 由于刚刚开始学习php,所以一些错误再所难免,请一定指正。

            www.bkjia.comtruehttp://www.bkjia.com/PHPjc/621630.htmlTechArticle初步接触了php开发以及php扩展的相关内容,发现extending and embeded php这本书很不错,很多问题也讲的非常透彻。这里把读到的一些书中的内容...


推荐阅读
  • 搭建个人博客:WordPress安装详解
    计划建立个人博客来分享生活与工作的见解和经验,选择WordPress是因为它专为博客设计,功能强大且易于使用。 ... [详细]
  • Windows环境下Oracle数据库迁移实践
    本文详细记录了一次在Windows操作系统下将Oracle数据库的控制文件、数据文件及在线日志文件迁移至外部存储的过程,旨在为后续的集群环境部署做好准备。 ... [详细]
  • egg实现登录鉴权(七):权限管理
    权限管理包含三部分:访问页面的权限,操作功能的权限和获取数据权限。页面权限:登录用户所属角色的可访问页面的权限功能权限:登录用户所属角色的可访问页面的操作权限数据权限:登录用户所属 ... [详细]
  • PHP中Smarty模板引擎自定义函数详解
    本文详细介绍了如何在PHP的Smarty模板引擎中自定义函数,并通过具体示例演示了这些函数的使用方法和应用场景。适合PHP后端开发者学习。 ... [详细]
  • 本文提供了处理WordPress网站中出现过多重定向问题的方法,包括检查DNS配置、安装SSL证书以及解决数据库连接错误等步骤。 ... [详细]
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • 本文详细介绍如何安装和配置DedeCMS的移动端站点,包括新版本安装、老版本升级、模板适配以及必要的代码修改,以确保移动站点的正常运行。 ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • HTML 表格与列表标签详解
    本文详细介绍了HTML中的表格标签和列表标签的使用方法,包括如何创建表格的不同部分(如标题、头部、主体和脚部),以及如何利用这些标签进行数据展示和布局设计。 ... [详细]
  • 汇总了2023年7月7日最新的网络安全新闻和技术更新,包括最新的漏洞披露、工具发布及安全事件。 ... [详细]
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 解决ADODB连接Access时出现80004005错误的方法
    本文详细介绍了如何解决在使用ADODB连接Access数据库时遇到的80004005错误,包括错误原因分析和具体的解决步骤。 ... [详细]
  • 本文详细解析了MySQL中常见的几种错误,并提供了具体的解决方法,帮助开发者快速定位和解决问题。 ... [详细]
  • 七大策略降低云上MySQL成本
    在全球经济放缓和通胀压力下,降低云环境中MySQL数据库的运行成本成为企业关注的重点。本文提供了一系列实用技巧,旨在帮助企业有效控制成本,同时保持高效运作。 ... [详细]
author-avatar
都市翡翠阿萨姆红茶
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有