一篇带你精通php

华子目录

  • 什么是php
  • php发展史
  • 平台支持和数据库支持
  • 网站
  • 静态网站和动态网站的区别
    • 静态网站
    • 动态网站的特点
  • 关键名词解析
    • 服务器概念
    • IP的概念
    • 域名
    • DNS
    • 端口
  • web程序的访问流程
    • 静态网站访问流程
    • 动态网站访问流程
  • php标记
    • 脚本标记
    • 标准标记(常用)
  • php注释

什么是php

php定义:一种服务器端的html脚本编程语言,是一种简单的,面向对象的,解释型的,健壮的,安全的,性能非常高的,独立于架构的,可移植的,动态的脚本语言。是一种广泛用于Open Source的尤其适合web开发并可以嵌入html的多用途脚本语言。它的语言接近C,Java和Perl,而且容易学习。该语言让web开发人员快速书写动态生成的网页。
php前身:Personal HomePage,个人主页,使用Perl语言开发的一种写入个人主页的语言。
php:PHP Hypertext Preprosessor,php超文本预处理器,底层使用c语言

php发展史

创建者:Rasmus Lerdorf
1994:1.0,个人perl,非常简单
1996:2.0,c底层,变得相对强大
1998:3.0,zendEngine,联合zend公司共同管理和维护php,zendEngine(zend引擎)用户高效的解析php代码
2000:4.0,session+输出缓冲等,session技术(会话技术)
2004:5.0,zend引擎2代,增加新技术(面向对象更新,命名空间,异常)
2015:7.0,新版的ZendEngine引擎,性能提升,新特性(异常)

平台支持和数据库支持

平台:window,Linux,UNIX
数据库支持:SQL server,MySQL,Oracle,Access

网站

Website 的中文名称是网站,是指在互联网上,根据一定的规则,使用 HTT、PHP 等代码语言制作的用于展示特定内容的相关网页的集合,有可供管理人员操作的后台及用户使用的前台。简单地说,Website 是一种通讯工具,就像布告栏一样,人们可以通过 website 来发布自己想要公开的资说,或者利用 website 来提供相关的网络服务。人们可以通过网页浏览器来访问 Website,获取自己需要的资讯或者享受网络服务。

静态网站和动态网站的区别

静态网站

1.网页内容一经发布到网站服务器上,无论是否有用户访问,每个静态网页的内容都是保存在网站服务器上的,也就是说,静态网页是实实在在保存在服务器上的文件,每个网页都是一个独立的文件。
2.静态网页的内容相对稳定,因此容易被索引引擎检索。
3.静态网页没有数据库的支持,再网站制作和维护方面工作量较大,因此当网站信息量很大时完全依靠静态网页制作方式比较困难。
4.静态网页的交互性较差,再功能方面有较大的限制。

动态网站的特点

1.交互性:网页会根据用户的要求和选择而动态地改变和响应,浏览器作为客户端,成为一个动态交流的桥梁,动态网页的交互性也是今后 Web 发展的潮流。
2.自动更新:即无须手动更新 HTT文档,便会自动生成新页面,可以大大节省工作量。
3.因时因人而变:即当不同时间、不同用户访问同一网址时会出现不同页面。“此外动态网页是与静态网页相对应的,也就是说,网页 URL 的后缀不是.htim、.html、.shtml、.xm1 等静态网页的常见形式,而是以.asp、.jsp、.php、.perl、.cgi等形式为后缀。在动态网页网址中有一个标志性的符号–“?”

关键名词解析

服务器概念

1.服务器(server),也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。“
2.服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。“
3.在网络环境下,根据服务器提供的服务类型不同,分为文件服务器,数据库服务器,应用程序服务器,WEB 服务器等。“
总结:服务器:能够提供服务的机器,取决于机器上所安装的软件(服务软件)Web 服务器: 提供web 服务(网站访问),就需要安装 web 服务软件,Apache,tomcat,iis等

IP的概念

IP: Internet Protocol,网络之间互联协议。网络之间互连的协议也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守 IP 协议就可以与因特网互连互通。IP 地址具有唯一性。(每台电脑都有一个唯一的 IP 地址)

域名

域名 (Domain Name),是由一串用点分隔的名字组成 (www.itcast.cn)的 Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置,地理上的域名,指代有行政自主权的一个地方区域)。域名是一个 IP 地址上有“面且”。一个域名的目的是便于记忆和沟通的一组服务器的地址(网站,电子邮件,FTP 等)。域名作为力所能及难忘的互联网参与者的名称。

特殊 IP:127.0.0.1,代表本机
特殊域名: localhost

DNS

DNS (Domain Name System,域名系统),因特网上作为域名的IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的 IP数串。通过主机名,最终得到该主机名对应的 IP 地址的过程叫做域名解析(或主机名解析)。

端口

端口(Port),可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口,其中虚拟端口指计算机内部或交换机路由器内的端口,不可见。例如计算机中的 80 端口、21 端口、23[端口等。物理端口又称为接口,是可见端口,计算机背板的RJ45 网口,交换机路由器集线器等 RJ45 端口。

web程序的访问流程

浏览器发起访问---->DNS解析域名---->服务器----->服务软件

静态网站访问流程

在这里插入图片描述

动态网站访问流程

动态网站访问流程于静态差不多,但是会多出几个内容:服务器端解析,数据库。
在这里插入图片描述

php标记

脚本标记

语法:<script language="php">php代码</script>

标准标记(常用)

<?php php代码?>
<?php
    echo "hello world";
?>

php注释

php中注释分为两种:行注释+块注释
行注释://或#
快注释:/* */

<?php

    //再脚本开始前,会对脚本功能进行简单阐述
    # 在脚本开始前,会对脚本功能进行简单阐述
    /*
    在脚本开始前,对脚本功能进行简单阐述
    功能
    作者
    版本
    */
    echo "hello world";
?>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/125797.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux Hadoop平台伪分布式安装

Linux Hadoop 伪分布式安装 1. JDK2. Hadoop3. MysqlHive3.1 Mysql8安装3.2 Hive安装 4. Spark4.1 Maven安装4.2 Scala安装4.3 Spark编译并安装 5. Zookeeper6. HBase 版本概要&#xff1a; jdk&#xff1a; jdk-8u391-linux-x64.tar.gzhadoop&#xff1a;hadoop-3.3.1.tar.gzh…

Spring Ioc 容器启动流程

Spring容器的启动流程 本文基于 Spring 5.3.23 基于XML文件 public void test() {ApplicationContext applicationContext new ClassPathXmlApplicationContext("applicationContext.xml");User user applicationContext.getBean("user", User.class)…

MySQL大表数据导入到MongoDB

修改参数 &#xff0c;开启into outfile的功能 secure_file_priv/home/backups/mysql_outfile 重启数据库是参数生效 按条件导出MySQL数据 select * from receipt_receive_log where gmt_create > 2020-04-13 00:00:00 and gmt_create< 2020-07-13 00:00:00 INTO O…

微信小程序真机调试连接状态一直在正常和未链接之间反复横跳?

背景&#xff1a;小程序真机调试的时候&#xff0c;发现真机的network不显示接口调用情况&#xff0c;控制台也没有输出内容。具体如下所示&#xff1b; 解决方法&#xff1a; 1、确保手机端连接的网络和微信开发者工具网络一致&#xff0c;比如用同一个WiFi 2、真机自动调试…

极狐GitLab CI 助力 .Net 项目研发效率和质量双提升

目录 .NET nuget 自动生成测试包&#xff08;prerelease&#xff09;版本号 .NET 版本号规范 持续集成自动打包 持续集成自动修改版本号 .NET 行级增量代码规范——拯救老项目 本地全量代码规范 行级增量代码规范 很多团队或开发者都会使用 C#、VB 等语言开发 .Net 应用…

ROS源码安装应用,VSCode

ROS源码安装应用 安装一下VSCode 前置文章 到安装程序的目录中: 完成克隆 编译 catkin_make打开ros核心 roscore打开应用程序 rosrun turtlesim turtlesim_node安装一下VSCode deb下载地址 sudo dpkg -i code_1.84.1-1699275408_amd64.deb添加项目工程到工作空间&#xff…

MyBatis中文网

MyBatis中文网https://mybatis.net.cn/ MyBatis 是一款优秀的持久层框架&#xff0c;它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Ja…

go语法入门2

字符串 使用双引号或反引号引起来的任意个字符。它是字面常量。 func main() {var a "abc\n测试" // \n换行fmt.Println(a) } abc 测试func main() {var a "abc\n\t测试" \\换行后在tabfmt.Println(a) } abc测试func main() {var a abc测试 …

MySQL binlog 日志解析后的exec_time导致表示什么时间?

1. exec_time 到底表示什么时间&#xff1f; MySQL binlog日志解析后&#xff0c;我们能看到会有 exec_time &#xff0c;从字面意思理解这个记录的是执行时间&#xff0c;那这个记录的到底是单条sql的执行时间&#xff1f;还是事务的执行时间&#xff1f;下面通过测试来解读一…

ruoyi前后端分离版本开发框架解读---让你快速入门

后端结构 com.ruoyi ├── common // 工具类 │ └── annotation // 自定义注解 │ └── config // 全局配置 │ └── constant // 通用常量 │ └── core …

AcWing99. 激光炸弹

题目 地图上有 N N N 个目标&#xff0c;用整数 X i , Y i X_i,Y_i Xi​,Yi​ 表示目标在地图上的位置&#xff0c;每个目标都有一个价值 W i W_i Wi​。 注意&#xff1a;不同目标可能在同一位置。 现在有一种新型的激光炸弹&#xff0c;可以摧毁一个包含 R R RR RR 个…

“Git 在团队协作中的优化实践“

文章目录 引言&#xff1a;一、Git 简介1.1 Git 基本概念1.2 Git 原理与工作流程 二、 Git 与 SVN 的区别三、Git 的常用命令及操作四、Git 的理论知识&#xff1a;总结&#xff1a; 引言&#xff1a; 随着技术的不断演进和团队的不断发展&#xff0c;代码管理变得越来越重要。…

不用流氓软件,如何在户外使用手机听下载到家中电脑里的音乐文件呢?

文章目录 本教程解决的问题是&#xff1a;按照本教程方法操作后&#xff0c;达到的效果是本教程使用环境&#xff1a;1 群晖系统安装audiostation套件2 下载移动端app 很多老铁想在上班路上听点喜欢的歌或者相声解解闷儿&#xff0c;于是打开手机上的某雅软件和某音乐软件点进去…

2.docker镜像的导入导出

目录 概述docker 常用命令下载导出导入镜像结束 概述 docker 常用命令 本章节使用到的命令&#xff0c;总结在此&#xff0c;后面有使用案例。 命令作用docker images显示镜像docker rmi $(docker images -q)删除系统上所有的镜像docker rmi -f强制删除多个镜像 &#xff1a…

istio 学习笔记

参考&#xff1a;istio简介和基础组件原理&#xff08;服务网格Service Mesh&#xff09;-CSDN博客 Istio 微服务框架 服务治理。 Istio的关键功能: HTTP/1.1&#xff0c;HTTP/2&#xff0c;gRPC和TCP流量的自动区域感知负载平衡和故障切换。 通过丰富的路由规则&#xf…

module ‘torch‘ has no attribute ‘_six‘

主要问题是torchvision的问题 在122服务器上的scvi-env2环境中 import torch import torch.nn as nnimport numpy as npfrom tqdm import tqdm from torchvision.utils import save_image, make_grid # Model Hyperparametersdataset_path ./datasetscuda True DEVICE tor…

小白学爬虫:通过商品ID获取1688跨境属性数据接口|1688商品属性接口|1688一件代发数据接口|1688商品详情接口

通过商品ID获取1688跨境属性数据接口可以使用1688开放平台提供的API接口实现。以下是获取跨境属性数据的基本步骤&#xff1a; 1、点击获取测试key和secret 2、构造请求参数&#xff0c;包括商品ID和其他必要参数&#xff0c;如接口权限、请求类型等。 3、通过API接口链接&…

机器视觉工程师注意,没有经历过公司倒闭看下文章,机器视觉公司即将要倒闭的征兆是什么?

很多机器视觉工程师没有经历过公司倒闭&#xff0c;谁也不想自己的公司倒闭&#xff0c;毕竟我们是打工人&#xff0c;拿固定工资的。 机器视觉公司即将要倒闭的征兆有哪些迹象​&#xff1f;​ 1、PM&#xff0c;机器视觉工程师频繁开会&#xff0c;甚至周末强制开会。 2.停…

Ubuntu中增加交换内存

前言 在运行一些代码编译或者clang-format会占用大量的内存&#xff0c;此时可能会出现电脑卡死的情况&#xff0c;在ubuntu中可以通过增加交换内存来临时解决这个问题&#xff0c;相对于硬件改动成本更低&#xff0c;但是性能不如物理内存。 实践 查看当前的交换内存大小 …

学习笔记4——JVM运行时数据区梳理

学习笔记系列开头惯例发布一些寻亲消息 链接&#xff1a;https://baobeihuijia.com/bbhj/contents/3/192489.html 类装载器classLoader&#xff1a; 将本地的字节码文件.class 加载到内存方法区中成为元数据模板&#xff08;两个class对象是否为同一个类要求&#xff1a;完整…