PHP开发环境搭建与工具

article/2025/10/3 18:37:14

PHP是跨平台的,所以我们可以在Mac OS,Windows,Linux等主流操作系统中进行开发,最为经典的也是最被认可的是Lamp/Lnmp结构,它们是(Linux apache/nginx MySQL PHP)的缩写,我们先简单的用非术语来介绍一下这几个产品。

 

工欲善其事,必先利其器

Linux-是一款开源的优秀的操作系统。

Linux与我们大多数人使用的windows不同,它的学习成本与操作难度相对较高,以命令行控制为主,虽然近年来linux系统在GUI(图形界面/桌面)上发展的还不错,但是还不能普及开来,随着你编程能力的提升,相信你也会慢慢走入Linux系统这个大家庭,简单来评价一下linux与windows的区别,linux把使用者当成高手,windows把使用者当成傻子。

Apache/Nginx-当下最为流行的两款web服务器端软件。

这两款软件我就不多做解释,都是概念性的东西,你听了可能会感觉枯燥乏味,随着你境界的提高,该知道的自然会知道,用我们江湖人的说法就是,以你目前的境界来说,知道的太多对你没有好处。再提一点,nginx是一款高性能的HTTP和反向代理服务器,非常符合当前的大数据应用场景。

MySQL-一款关系型数据库管理系统。

我不解释它是什么,我要告诉你它大概能干什么。比如你现在要搭建一个自己的博客网站,你准备了许多文章,那么你想一下,这些文章需要放在哪里PHP才能够把它们找出来呢?MySQL就是就是干这个的,相当于一个仓库,把你的数据保存起来,需要的时候去查询。

独立搭建LAMP/LNMP架构是PHP编程入门的基础,网上有太多的文章详细的讲这个,我也写过不少,不过基本都没发表,到后面发一下吧。前期我认为不需要把它们独立搭建,我们选择在windows系统上安装集成环境便于学习。

百度一下XAMPP,进入其官网,你会发现

 

XAMPP集成环境

 

XAMPP集成环境

这里有适用于不同平台的,我们按照自己的操作系统进行选择下载,如果因为网络问题进不去官网或者下载缓慢,那就退而求次选择百度推荐的同款软件点击普通下载吧,虽然我电脑上已经有了我自己搭建的环境,这里我也再安装一遍截图给大家看看吧。

 

组件选择

到这一步的时候我们只需要选择Apache MySQL PHP phpMyAdmin就OK,然后你自己找个地方(如D:\xampp)进行下一步等待安装完成就可以了,安装完成后点开软件界面上的Start,Apache和MySQL头上冒绿光,说明开启成功了,点Admin就可以访问到本地Apache首页与MySQL数据库。

你可以找到安装目录的htdocs这个文件夹,在里面新建文件demo.php,看清楚扩展名是.php,不是.php.txt,记住电脑要关闭隐藏扩展名这个功能,用记事本打开,输入:

<?php

echo "Hello world.";

然后打开你的浏览器,在地址栏输入localhost/demo.php,

你将看到页面上显示的是Hello world.

到这里为止,本地PHP环境算是搭建完成,接下来给他家推荐一下一些工具的选择。

对于开发人员而言,许多浏览器还有发送接口测试工具类的模拟浏览器都是要有的,不过对于现阶段的你而言,不需要那么多,你只需从Chrome、Firfox中任意选择一款使用就可以了。

一款强大的代码编辑器有助于我们开发,不过对于前期学习来说,IDE强大了也不是一件好事,你可能会因此而依赖上它的代码提示等功能,所以这里给你推荐的编辑器是Notepad++和editplus以及sublime text这三款软件。

Notepad++是轻量级的记事本(也可以进行自定义配置),Editplus和notepad++差不多,不过你只能免费使用30天就得想办法找破解版了,sublime text算得上是轻量级IDE了,插件众多,不管是前端还是后台都支持良好,而且界面也非常优雅,漂亮,不妨一试。

如果你的电脑配置比较高,有喜欢一些看上去略叼的IDE,那么你可以尝试一下PHPStorm、Netbeans、ZendStudio等等,这些IDE都非常强大,也各有所长,但是共同点就是都很笨重,一开始学习我是不推荐用这些的。

虽然我的文章没有人看,不过我还是想坚持写一下,毕竟多年前自学也走了不少弯路,能给新人带来一些帮助,我还是比较乐意的。


http://chatgpt.dhexx.cn/article/sZUJ4mEL.shtml

相关文章

PHP开发环境搭建工具有哪些?

对于php开发小白来说搭建一个php运行环境就是一道坎&#xff01; 因为要做php开发&#xff0c;搭建一个能够运行php网站的服务器环境是第一步&#xff0c;传统的php环境软件非常复杂&#xff0c;好在很多公司开发了一键搭建php安装环境&#xff0c;一键进行php环境配置&#x…

open与fopen

1.在将open与fopen之前&#xff0c;先讲文件描述符&#xff1a; 当一个可执行程序运行以后&#xff0c;就变成进程&#xff0c;操作系统会为每个进程分配一定的虚拟内存空间&#xff0c;32位操作系统就分配4G。虚拟内存空间结构如下图所示&#xff1a; 1G是内核空间使用&#…

open与fopen的区别

函数原型 FILE *fopen(const char *filename, const char *mode); 参数 filename-- 这是 C 字符串&#xff0c;包含了要打开的文件名称。 mode-- 这是 C 字符串&#xff0c;包含了文件访问模式。 功能 使用给定的模式mode打开filename所指向的文件。 1.层次不同 open是系统调用…

freopen()函数详解

freopen函数详解及在OJ评测系统中的使用 若要打开一个二进制文件&#xff0c;需要加上一个“b”字符。 重定向打开 freopen("in.txt", "r", stdin); freopen("out.txt", "w", stdout);重定向恢复 winfreopen("CON", &quo…

c语言关于freopen函数最全使用方法

hey&#xff0c;好久不见&#xff0c;最近沉迷游戏无法自拔&#xff0c;现在抽出时间来写写关于freopen函数的使用方法&#xff0c;这个freopen函数主要作用就是从文件读取函数同时写入文件&#xff0c;不像我们平常的控制台输入输出&#xff0c;也避免我们在刷一些题目时&…

C++文件操作之freopen

作为一个OIer&#xff0c;文件操作是很重要的。 如果没有文件操作或文件操作被注释&#xff0c;等待着你的就是爆零的命运。 C和C的文件操作&#xff0c;一般是用fopen或fstream&#xff0c;但在OI里&#xff0c;我们用freopen&#xff0c;即文件重定向。 它的用法其实也挺简单…

TVM中的auto-scheduling机制(Ansor)学习笔记

背景 TVM继承了Halide中算法&#xff08;Algorithm&#xff09;与调度&#xff08;Schedule&#xff09;分离的思想。用户使用TE&#xff08;Tensor expression&#xff09;这种DSL定义计算&#xff08;算法&#xff09;&#xff0c;然后编译器优化相应的schedule&#xff0c;…

TVM的“hello world“基础流程 I

前言 继前图灵奖获得者Hennessy和Patterson在ISCA 2018提出“A New Golden Age for Computer Architecture”&#xff0c;编译器界大神Chris Lattner在ASPLOS 2021提出了“The Golden Age of Compiler Design”。另一方面&#xff0c;2020年图灵奖授予了编译器“龙书”作者Jef…

【TVM系列教程一】深度学习编译器及TVM 介绍

0x0. 介绍 大家好呀&#xff0c;在过去的半年到一年时间里&#xff0c;我分享了一些算法解读&#xff0c;算法优化&#xff0c;模型转换相关的一些文章。这篇文章是自己开启学习深度学习编译器的第一篇文章&#xff0c;后续也会努力更新这个系列。这篇文章是开篇&#xff0c;所…

TVM运行系统

TVM运行系统 TVM支持多种编程语言用于编译器堆栈的开发和部署。在本说明中&#xff0c;我们解释了TVM运行时的关键元素。 我们需要满足很多有趣的要求&#xff1a; 部署&#xff1a;从python / javascript / c 语言调用已编译的函数。 调试&#xff1a;在python中定义一个函数…

tvm的一个大体介绍

TVM的一个大体介绍 导入模型模型转换到relay转换到 _tensor_ _expression_ (TE)自动优化调度模型编译转换到TIR&#xff08;tensor IR&#xff09;编译器编译到机器码 导入模型 可以支持从tf&#xff0c;pytorch&#xff0c;或者onnx框架中导入模型。 模型转换到relay 上述框…

TVM 架构设计

TVM 架构设计 本文面向希望了解TVM体系结构和/或&#xff0c;积极参与项目开发的开发人员。 主要内容如下&#xff1a; 示例编译流程&#xff0c;概述了TVM将模型的高级概念&#xff0c;转换为可部署模块的步骤。 逻辑架构组件部分&#xff0c;描述逻辑组件。针对每个逻辑组…

TVM的安装过程

最近在看深度学习编译器相关的工作&#xff0c;其中FlexTensor给我留下了比较深刻的印象&#xff0c;加上这项工作是开源的&#xff0c;所以想看看这份工作的源码。首先是怎么把工程跑起来&#xff0c;FlexTensor倚仗TVM做代码生成&#xff0c;所以首先得安装TVM。 首先给出官…

TVM系列 - 图优化 - 算子融合

TVM系列 - 图优化 - 算子融合 图优化综述 声明一下&#xff0c;本文所有的理解都是基于个人理解。 图优化算是一个推理框架前端比较成熟的操作了&#xff0c;一般来说&#xff0c;针对模型做图优化有两个目的&#xff08;对于通用框架来说&#xff0c;就加速减少计算一个目的…

TVM 从入门到精通 | 安装 TVM (Part 2)

本文首发自&#xff1a;公众号 HyperAI超神经 内容一览&#xff1a;TVM 共有三种安装方法&#xff1a;从源码安装、使用 Docker 镜像安装和 NNPACK Contrib 安装。本文讲解如何通过 Docker 镜像 和 NNPACK Contrib 安装。 关键词&#xff1a;TVM Docker 基础教程 欢迎回…

初识 TVM

如有图像或公式显示错误&#xff0c;可以访问我的个人博客&#xff1a;https://www.wanglichun.tech/2019/11/15/tvm/ 笔者也是最近偶然的机会才开始接触TVM&#xff0c;使用过后发现&#xff0c;经过auto-tuning后的TVM模型在速度是竟然超过了TensorRT,并且笔者使用的是MXNet…

TVM(端到端深度学习编译器)简介

TVM-算子编译器前后端 前言TVM出现背景TVM是什么为什么用TVM&#xff0c;TVM解决了什么当前问题&#xff1a;TVM解决了 TVM如何解决具体实现手段如何设计搜索空间Search Space优化策略图优化 - 算子融合图优化 - Layout Transform张量优化 - 矩阵乘法 GEMM张量优化 - 调度算法张…

tvm学习笔记(五):tvm工作原理

一、总体流程&#xff1a; TVM的工作流程&#xff1a;首先&#xff0c;将网络表示成统一的表示形式&#xff08;Intermediate Representation&#xff09;&#xff0c;并进行一些可重用的图优化&#xff1b;然后&#xff0c;利用不同的后端生成对应设备代码&#xff0c;如图1所…

TVM系列 - 量化

TVM系列 - 量化 TVM量化原理TVM量化现状TVM量化原理介绍TVM量化代码解析 TVM量化原理 关于量化的方式其实已经有足够的文章去了解目前最主流的两种&#xff1a;离线量化及训练时量化&#xff08;大家应该能理解&#xff0c;其实就是伪量化&#xff09;&#xff0c;而tvm的作者…

TVM-初识TVM

目录 TVM简介那么TVM是什么&#xff1f;TVM做了哪些工作 TVM简介 随着深度学习的发展&#xff0c;深度学习的能力可以说是越来越强大&#xff0c;识别率节节攀升&#xff0c;与此同时&#xff0c;深度学习框架也变得越来越多&#xff0c;目前比较主流的深度学习框架包括&#…