BS架构和CS架构

B:Browser:浏览器

S:Server:服务器

C:Client:客户端

  • BS

浏览器和服务器的关系,通过浏览器来访问服务器,比如:百度、新浪...

优点:只要有浏览器就能访问服务器,方便

缺点:大部分的逻辑都在服务器上

  • CS

客户端和服务器的关系,通过客户端软件来访问服务器,比如:QQ、微信

优点:部分逻辑在客户端运行,减轻了服务器的负担

缺点:要安装客户端软件,麻烦

静态网站与动态网站

  • 静态网站

没有数据交互的网站,不支持数据传输(页面的后缀为.html)

  • 动态网站

支持数据交互的网站(页面的后缀为.php与.jsp)

客户端与服务端

客户端向服务器发送请求,必须从一个端口出去,从那个端口出去由客户端操作系统决定

服务器上的请求端口必须是确定的

Web服务器的端口号默认为80端口

MySQL服务器的端口号默认为3306端口

FTP的端口号默认为21端口

前台和后台

  • 前台

浏览者看到的页面(显示数据)

  • 后台

管理员看的页面(操作数据)

PHP的优点

跨平台:可以在window上运行,也可以在Linux上运行

开源:源码开放(没有版权)

语法简单,上手快

运行在服务器端(客户端只需要浏览器就可以访问网站)

非常快速的开发网站

PHP是解释性语言还是编译型语言?

一门语言到底是解释型还是编译型取决于是否保存了可执行代码

  • 解释性语言
读取源码--词法分析--语法分析--编译成机器语言--执行
  • 编译型语言

将可执行的代码放在文件中(可见)

读取源码--词法分析--语法分析--编译成机器语言--保存可执行的代码--执行

第一次执行,解释型语言速度快,第二次执行编译型语言速度快(第二次编译型语言直接执行保存的代码)

  • PHP语言

PHP将opcode缓存在内存中(不可见)

读取源码--词法分析--语法分析--编译生成opcode缓存--由zend engine执行

PHP介绍(PHP入门1)的更多相关文章

  1. .NET平台开源项目速览(6)FluentValidation验证组件介绍与入门(一)

    在文章:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧!(第二辑)中,给大家初步介绍了一下FluentValidation验证组件.那里只是概述了一下,并没有对其使用和强大功能做深入研究 ...

  2. freemarker语法介绍及其入门教程实例

    # freemarker语法介绍及其入门教程实例 # ## FreeMarker标签使用 #####一.FreeMarker模板文件主要有4个部分组成</br>####  1.文本,直接输 ...

  3. (转)私有代码存放仓库 BitBucket介绍及入门操作

    转自:http://blog.csdn.net/lhb_0531/article/details/8602139 私有代码存放仓库 BitBucket介绍及入门操作 分类: 研发管理2013-02-2 ...

  4. NET平台开源项目速览(6)FluentValidation验证组件介绍与入门(转载)

    原文地址:http://www.cnblogs.com/asxinyu/p/dotnet_Opensource_project_FluentValidation_1.html 阅读目录 1.基本介绍 ...

  5. 读写Word的组件DocX介绍与入门

    本文为转载内容: 文章原地址:http://www.cnblogs.com/asxinyu/archive/2013/02/22/2921861.html 开源Word读写组件DocX介绍与入门 阅读 ...

  6. [转帖]Druid介绍及入门

    Druid介绍及入门 2018-09-19 19:38:36 拿着核武器的程序员 阅读数 22552更多 分类专栏: Druid   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议 ...

  7. Redis介绍及入门安装及使用

    Redis介绍及入门安装及使用 什么是Redis Redis is an open source (BSD licensed), in-memory data structure store, use ...

  8. Mysql数据库的简单介绍与入门

    Mysql数据库的简单介绍与入门 前言 一.下载与安装 1.下载 官网下载MYSQL5.7.21版本,链接地址https://www.mysql.com/downloads/.下载流程图如下: 找到M ...

  9. Nodejs学习笔记(十四)— Mongoose介绍和入门

    目录 简介 mongoose安装 连接字符串 Schema Model 常用数据库操作 插入 更新 删除 条件查询 数量查询 根据_id查询 模糊查询 分页查询 其它操作 写在之后... 简介 Mon ...

  10. 【python自动化第一篇:python介绍与入门】

    一.python介绍以及发展史  1.1 python的介绍: 简单点来说吧,python这玩意儿是一个叫做Guido van Rossum的程序猿在1989年的圣诞打发时间而决心去开发的一个脚本编程 ...

随机推荐

  1. csharp:FlowLayoutPanel

    /// <summary> /// 集合添加的控件 /// 涂聚文20150339 /// </summary> public void AddNewTextBox() { P ...

  2. 自定义Windows Form无法拖动,简单解决方案。

    我也不知道为什么要自定义一个没差的WinForm,反正就是遇到了MyForm无法用鼠标拖着走的问题,百度到的解决方案,记录一下:再把 [DllImport("user32.dll" ...

  3. LeetCode 533----Lonely Pixel II

    问题描述 Given a picture consisting of black and white pixels, and a positive integer N, find the number ...

  4. android去应用市场升级

    private String getAppInfo() {   try {   String pkName = this.getPackageName();   String versionName ...

  5. Mycat中间件

    数据库中间件Mycat自我介绍 一.mycat概述 1.功能介绍 mycat一个开源的分布式数据库系统,是一个实现了mysql协议的server前端用户可以把它看成一个数据库代理,用mysql客户端工 ...

  6. 关于serialVersionUID与序列化"

    java序列化trick and trap 厂内经常出现序列化对象版本不匹配问题,于是发本文说明一些序列化的注意点 调用MQ.memcached.rpc等等涉及到远程通讯的都会经过序列化,虽然客户端透 ...

  7. 一分钟在云端快速创建MySQL数据库实例

    本教程将帮助您了解如何使用Azure管理门户迅速创建,连接,配置MySQL 数据库 on Azure.完成本教程后,您将在Azure上拥有一个示例MySQL数据库服务器,并了解如何使用管理门户执行基本 ...

  8. Python 词频统计

    利用Python做一个词频统计 GitHub地址:FightingBob [Give me a star , thanks.] 词频统计 对纯英语的文本文件[Eg: 瓦尔登湖(英文版).txt]的英文 ...

  9. Python学习---迭代器学习1210

    可以直接作用于for循环的数据类型有以下几种: 一类是集合数据类型,如list.tuple.dict.set.str等: 一类是generator,包括生成器和带yield的generator fun ...

  10. Linux 配置samba服务实现与Windows文件共享

    目录: 1.samba服务介绍 2. 安装samba服务和客户端 3.samba配置文件详解 4.配置实例 5.客户端挂载与测试 6.samba排错 1.Samba服务介绍     Samba 最先在 ...