php简介(第一天打卡)

一.php简介

1.什么是php?

1.1 Php 为什么叫这个名字?

  • Personal home page 最开始用于个人主页建站

  • 后更名为 hypertext preprocessor 超文本预处理

1.2 php是属于哪种语言?

  • 后端语言 (从开发角度分类)

  • 服务端语言 (从环境开发分类)

    • 运营在服务器上,客户端浏览器无法直接执行

      • 工作机制:

        1. 浏览器请求 PHP 页面

        2. 服务器解析 PHP 代码,生成 HTML 输出

        3. 浏览器接收 HTML,展示页面

  • 脚本语言(语言执行特性分类)

    • 解释执行的语言,无需编译,直接执行

      • 理解不需要像c一样先编译 后执行

      • 解释执行:

        • 代码由解释器逐行读取、执行

        • 不需要生成可执行文件

      • 脚本语言强调 快速开发和灵活执行,适合网页开发、自动化、数据处理,不像 C 那样必须经过编译环节。

语言类型 执行方式
C / C++ 编译型 → 编译成二进制 → 运行
Java 编译型 → 编译成字节码 → JVM 解释或 JIT 执行
PHP / Python / JavaScript 脚本语言 → 解释器逐行执行,不用单独编译
  • 高级语言
语言类型 可读性 执行方式
机器语言 0/1 最低 CPU 直接执行
汇编语言 助记符低 汇编器 → 机器码
C / C++ / Java / PHP 高级语言 编译器或解释器 → 机器码

1.3 php有啥功能?

  • 尤其适用于 Web 开发并可嵌入 HTML 中去

    • 适合前端建站

      • PHP 最初设计就是为了快速生成网页
    • "Web 开发"是什么意思

      • Web = 网站(Website)或网页(Web page)

      • Web 开发 就是建网站或者开发网页应用的过程

      • 范围可以大到大型系统(比如电商、社交平台),也可以小到个人博客、静态网页

  • 嵌入 HTML 中去(语法糖)

    • 可嵌入 HTML:

      • PHP 代码可以直接写在 HTML 页面里

      • 在服务器上执行 PHP 代码 → 输出最终 HTML → 浏览器显示页面

1.4 php的历史发展是咋样的,语法构成是咋样的,流行率多少?

  • php发展史

    时间 版本 主要变化 & 借鉴语言特性
    1995 PHP/FI 1.0 个人主页工具,最初 PHP 诞生;语法简单,借鉴 Perl 的文本处理能力
    1997 PHP/FI 2.0 支持更多功能,更易生成动态网页;仍受 Perl 脚本风格影响
    1998 PHP 3 重写为正式语言,由 Andi Gutmans 和 Zeev Suraski 开发;首次称为 PHP: Hypertext Preprocessor ;语法借鉴 C 的控制结构(if、for)和 Perl 的文本处理
    2000 PHP 4 引入 Zend 引擎,性能提升;支持面向对象编程基础(OOP);受 Java 面向对象思想启发
    2004 PHP 5 全面 OOP 支持,增加 PDO 数据库抽象层;更适合大型应用;借鉴 Java 类和接口设计
    2015 PHP 7 性能大幅提升(原 PHP 5 的 2 倍以上),增加类型声明,弃用旧特性;借鉴 C 的类型系统思想
    2020+ PHP 8 引入 JIT(即时编译)、语法改进,支持 union types、属性提升等现代特性;语法上参考 Java 和现代 C# 特性
    • perl 1987年12月出生

    • Java

      • 发明人:James Gosling 等,Sun Microsystems

      • 最初原型 Oak:1991 年

      • 正式发布(Java 1.0):1995 年 5 月

      • 用途:面向对象语言,跨平台,企业级应用

    • JavaScript

      • 发明人:Brendan Eich,Netscape

      • 最初诞生时间:1995 年 5 月 晚几天诞生于 Netscape 浏览器

      • 用途:前端脚本语言,用于网页动态交互

    • php 1995年6月

  • 在w3techs上建站73.6% 全球大佬

  • https://w3techs.com/https://w3techs.com/

    • CMS

      • CMS 是 Content Management System(内容管理系统) 的缩写 。

      • 核心在于内容管理和展示

    • 例如 WordPress

    • 不需要每次改网页都手写 HTML 或 PHP 代码

    • 让不懂编程的人也能轻松管理网站内容

    • 一个 软件系统 ,用来 创建、管理和发布内容(文字、图片、视频等)

    • OA

      • Office Automation

        • 主要功能:

          • 流程管理:请假、报销、审批

          • 协作办公:任务分配、会议管理、文档共享

          • 权限管理:不同角色拥有不同操作权限

          • 数据统计:报表生成、数据分析

          • 典型用户:公司员工、主管、管理层

        • 例如钉钉OA

  • 语法构成

    • 根据c语言,java,perl

      • C 语言的借鉴

        • 语法结构:

          • 条件语句:if / else

          • 循环语句:for / while / do-while

          • 大括号 {} 用于代码块

        • 操作符:

          • 算术运算符:+ - * / %

          • 比较运算符:== != > < >= <=

        • 变量作用域:

          • 使用类似 C 的局部和全局变量概念
        • 风格:

          • 强调语句结尾用分号 ;

        简单理解:C 给 PHP 提供了 基础语法骨架

      Java 的借鉴
      • 面向对象(OOP):

        • 类(class)、对象、方法

        • 继承(extends)、接口(interface)

        • public / private / protected 修饰符

      • 异常处理:

        • try / catch / throw 语法
      • 函数和方法调用风格:

        • 类似 Java 的调用方式:$obj->method()
      • 风格与可读性:

        • 借鉴了 Java 的规范化写法,让 PHP 的面向对象更易理解

      简单理解:Java 给 PHP 提供了 面向对象能力和规范风格

      Perl 的借鉴

      • 文本处理能力:

        • 强大的正则表达式支持

        • 字符串拼接、模式匹配、替换操作

      • 灵活性:

        • 可快速嵌入 HTML

        • 函数和变量命名自由

      • 内置函数:

        • 字符串操作、数组处理等大量实用函数
      • 松散类型系统:

        • PHP 可以像 Perl 一样灵活处理变量类型

      简单理解:Perl 给 PHP 提供了 文本处理能力和动态特性

1.5 总结

PHP,即 PHP: Hypertext Preprocessor,是一种被广泛应用的开源通用脚本语言,尤其适用于 Web 开发并可嵌入 HTML 中去。它的语法利用了 C、Java 和 Perl,易于学习。该语言的主要目标是允许 web 开发人员快速编写动态生成的 web 页面

相关推荐
郑州光合科技余经理7 小时前
海外版外卖加盟:总站与分站配送规则怎么分开管
java·开发语言·前端·后端·uni-app·php·ai编程
专业程序开发源7 小时前
springboot简历管理系统81389-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计
专业程序开发源7 小时前
springboot社区养老系统44071-计算机课程设计、毕业设计
vue.js·spring boot·后端·python·django·php·课程设计
星光开发者10 小时前
基于决策树随机森林算法的小说推荐系统的设计与实现-计算机毕设【课程设计】78485
vue.js·算法·微信小程序·django·php·课程设计·express
专业程序开发源13 小时前
SSM校园拍摄交流服务平台36936-计算机课程设计、毕业设计
java·spring boot·后端·python·elasticsearch·php·课程设计
星夜夏空9914 小时前
网络编程(5)—— Reactor实现(v3)
服务器·网络·php
小此方17 小时前
Linux网络(二十):TCP拥塞控制与延迟应答详解:从拥塞窗口到TCP性能优化,理解TCP与UDP的效率差异
linux·网络·php
专业程序开发源18 小时前
springboot高校学生社团管理系统74810-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计
AC赳赳老秦18 小时前
OpenClaw 与 FineBI 联动方案:公开数据自动采集与实时业务分析看板实践
大数据·开发语言·python·php·finebi·deepseek·openclaw
AIGC小尼18 小时前
8G 显存零基础本地部署 AI 漫剧全流程|ComfyUI+Wan2.2+FFmpeg 离线成片完整方案(含代码 / 指令 / 排坑)
人工智能·ffmpeg·php·comfyui·ai漫剧