【PHP入门教程】PHPStudy环境搭建+composer创建项目

文章目录

  • PHP 的历史
  • PHP 的用途
  • PHP 的特点和优势
  • PHP 环境搭建
  • 环境准备安装
    • window 安装
    • `CentOS` / `Ubuntu` / `Debian` 安装
  • 第一个Hello World
    • 使用Apache服务运行
    • 命令行运行代码
  • Composer
    • 安装 Composer:
    • 安装途中报错解决:
    • 初始化项目
    • 创建文件
    • 最终文件目录
    • Composer 常用命令
    • 镜像设置

PHP 的历史

PHP(Hypertext Preprocessor)超文本预处理器是一种开源的通用脚本语言,主要用于Web开发。它最初由Rasmus Lerdorf在1995年创建,用于跟踪他的个人网站访问者。随着时间的推移,PHP已经发展成为一个功能强大的服务器端脚本语言。

PHP 的用途

PHP广泛用于Web开发,可以生成动态页面内容。它支持Web开发中的各种任务,包括:

  • 创建动态网站和Web应用程序
  • 与数据库交互
  • 管理用户会话和身份验证
  • 处理表单数据等

PHP 的特点和优势

  • 跨平台:PHP可以在多种操作系统上运行,如Windows、Linux、Unix等。
  • 易于学习:对于初学者来说,PHP的语法简单直观。
  • 开源:PHP是免费的,拥有庞大的开发者社区和丰富的资源。
  • 广泛的数据库支持:PHP可以与MySQL、PostgreSQL、SQLite等多种数据库进行交互。
  • 高性能:PHP 7及更新版本在性能上有了显著提升。

PHP 环境搭建

要在本地计算机上运行PHP代码,你需要一个具有PHP解释器的Web服务器环境。常见的环境搭建工具有:

  • PHPStudy(跨平台)
  • WAMP(Windows)
  • MAMP(Mac)
  • XAMPP(跨平台)

环境准备安装

我们就选 PHPStudy 为例,因为使用得多,又跨平台

window 安装

  • 官方地址

在这里插入图片描述

CentOS / Ubuntu / Debian 安装

使用官方命令安装
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第一个Hello World

PHP 脚本在服务器上执行,然后将纯 HTML 结果发送回浏览器。
PHP 文件的默认文件扩展名是.php
PHP 脚本以 <?php 开始,以 ?> 结束:

模板示例:

<?php
// PHP 代码
?>
  1. 创建helloworld.php 文件
<!DOCTYPE html>
<html>
<body><h1>My first PHP page</h1><?php
echo "Hello World!";
?></body>
</html>

使用Apache服务运行

步骤:

  1. 使用apache服务,将helloworld.php 文件 放到 phpstudy 安装目录的 www文件夹下,启动服务
  2. 访问http://localhost/helloworld.php , 如果有端口,需要把端口加上
    在这里插入图片描述
    在这里插入图片描述

命令行运行代码

这里需要将 \phpstudy_pro\Extensions\php\php7.3.4nts路径配置成环境变量,这样就能在全局使用 php 命令了

在这里插入图片描述

运行命令,查看效果

php helloworld.php

在这里插入图片描述

Composer

Composer 是 PHP 的依赖管理工具,用于自动化和简化在 PHP 项目中引入和管理库(或依赖)的过程。以下是使用 Composer 的基本步骤:

安装 Composer:

  • 访问 Composer 官网 下载安装程序或使用命令行工具安装。
  • 在 Windows 上,可以下载安装程序并运行。
  • 在 Linux 或 Mac 上,可以通过 curl 或 wget 下载并执行安装脚本。
    在这里插入图片描述
    在这里插入图片描述

安装途中报错解决:

The Windows OneDrive folder is not supported on PHP versions below 7.2.23 and 7.3.10. Upgrade your PHP (7.3.4) to use this location with Composer. ,解决方法禁用Onedrive

  • Win10如何永久关闭Onedrive 怎么禁用Onedrive
    在这里插入图片描述

初始化项目

  • 在你的 PHP 项目根目录下,运行 composer init 来创建一个基础的 composer.json 文件。
    在这里插入图片描述

  • 使用 composer require <package> 命令添加依赖到你的项目。例如,composer require monolog/monolog 会添加 Monolog 日志库作为依赖。
    在这里插入图片描述

  • 自动加载

    • Composer 会生成一个自动加载脚本(通常在 vendor/autoload.php),确保你的代码可以自动加载依赖。
  • 配置 Composer

    • 你可以在 composer.json 文件中配置额外的设置,如自动加载规则、脚本、仓库等。
  • 使用 Composer.lock

    • composer.lock 文件用于锁定依赖的版本,确保在不同环境中安装一致的依赖版本。

创建文件

在文件目录中中创建src/index.php 文件,文件内容如下

<?php
echo 'Hello, World!';
?>

运行项目

php -S localhost:8080

在浏览器输入 http://localhost:8080/src/index.php ,

在这里插入图片描述

最终文件目录

在这里插入图片描述

Composer 常用命令

下面是一些 Composer 的常用命令,以表格形式列出:

命令描述
composer install安装 composer.json 中定义的所有依赖。
composer update更新所有依赖到最新版本,同时遵守版本约束。
composer require <package>添加一个新的依赖项到 composer.json 并安装它。
composer remove <package>composer.json 中移除一个依赖项并卸载它。
composer show显示所有已安装的依赖项。
composer show --tree以树状图形式显示依赖关系。
composer search <query>在 Packagist 上搜索包。
composer dump-autoload生成或更新自动加载文件。
composer check-platform-reqs检查平台要求是否满足。
composer clear-cache清除 Composer 的缓存。
composer config查看或修改全局或项目配置。
composer create-project <package>创建一个新的项目,并使用指定的包作为基础。
composer global require <package>将包安装到全局 Composer 目录。
composer global show列出全局安装的所有包。
composer run-script <script-name>运行 composer.json 中定义的脚本。
composer validate验证 composer.jsoncomposer.lock 文件的格式。
composer version <version>更新项目版本。
composer help <command>显示指定命令的帮助信息。

Composer 的强大之处在于其社区包仓库 Packagist,它提供了成千上万的 PHP 库供开发者使用。通过 Composer,你可以轻松地将这些库集成到你的项目中。

镜像设置

删除之前的镜像

composer config -g --unset repos.packagist

修改镜像

composer config -g repo.packagist composer https://packagist.org

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务:配置管理和配置热更新

参考&#xff1a;黑马程序员之微服务 &#x1f4a5; 该系列属于【SpringBoot基础】专栏&#xff0c;如您需查看其他SpringBoot相关文章&#xff0c;请您点击左边的连接 目录 一、引言 二、配置共享 1. 添加共享配置到nacos &#xff08;1&#xff09;jdbc的共享配置 shared…

iOS开发进阶(二十三):iOS 常见面试题汇总

文章目录 1. 如何理解RunLoop2. 如何理解RunTime3. KVO与KVC有什么联系4. iOS的事件传递过程5. CALayer 与 UIView 的关系6. iOS中为什么代理需要用 weak 修饰7. Block 为什么要用 copy 修饰8. 什么是 Block9. iOS 是如何实现 APNs 的10. 谈谈对内存管理的理解11. 什么是内存池…

设计模式:Service Locator模式简介

Service Locator模式 Service Locator 模式 Service Locator模式是一种设计模式&#xff0c;属于构造型模式&#xff0c;主要用于解决对象之间的依赖关系管理。它通过提供一个集中式的服务注册和查找机制&#xff0c;使得对象可以在运行时动态地获取所需的服务实例 主要特点 …

设计模式之Decorator装饰者、Facade外观、Adapter适配器(Java)

装饰者模式 设计模式的基本原则&#xff0c;对内关闭修改。 Decorator Pattern&#xff0c;装饰者模式&#xff0c;也叫包装器模式(Wrapper Pattern)&#xff1a;将一个对象包装起来&#xff0c;增加新的行为和责任。一定是从外部传入&#xff0c;并且可以没有顺序&#xff0…

WPF 中,ControlTemplate 和 DataTemplate 是两种不同类型的模板和区别

1. 用途与定义 ControlTemplate&#xff1a;用于定义控件的外观和视觉行为。每个WPF控件都有一个ControlTemplate&#xff0c;它定义了控件的视觉树结构&#xff0c;包括控件的布局、子元素、样式以及触发器等。通过自定义ControlTemplate&#xff0c;可以彻底改变控件的外观和…

删除二叉搜索树中的节点,力扣405题

// 首先要清楚的是deleteNode这个函数起到了什么作用&#xff0c;返回的是什么&#xff0c;心里面清楚这个才能写后续的递归函数。 // 本题中&#xff0c;deleteNode函数是接收一个根节点和一个值&#xff0c;删除这棵树中和该值相等的那个结点。返回删除后的树的根节点。…

望繁信科技入选2024年第3批上海市高新技术成果转化项目名单

近日&#xff0c;上海望繁信科技有限公司&#xff08;以下简称“望繁信科技”&#xff09;凭借其自主研发的“数字北极星流程挖掘分析软件”项目&#xff0c;成功入选2024年第3批上海市高新技术成果转化项目名单。这一殊荣根据《上海市高新技术成果转化项目认定办法》&#xff…

Keil Error-Flash Download failed Cortex-M4 擦除芯片还不好使的方案!!!

点击魔术棒-Debug-Settings后看到SWDIO可以正常识别&#xff0c;但是点击Reset下拉只有三个选项。 此时点击Pack&#xff0c;将Enable勾去掉。 回到Reset&#xff0c;此时多了Autodetet选项&#xff0c;选择这个选项后&#xff0c;即可正常烧录。

CLI举例:通过ISAKMP方式建立GRE over IPsec隧道

配置安全策略&#xff0c;允许私网指定网段进行报文交互&#xff0c;放行IKE协商报文。配置静态路由&#xff0c;保证两端路由可达。配置GRE Tunnel接口以及Tunnel口的转发路由。配置基于ACL的IPsec策略。GRE over IPsec中IPsec需要保护的数据流以GRE的起点为源、终点为目的。 …

前端入门:HTML5全攻略

HTML概述 HTML指的是超文本标记语言&#xff0c;它是用来描述网页的一种语言。 HTML不是一种编程语言&#xff0c;而是一种标记语言。 标记语言是一套标记标签。 Web标准是由W3C组织和其他标准化组织制定的一系列标准的集合。 W3C&#xff08;万维网联盟&#xff09;是由国际最…

初始C++(类与对象)

感谢大佬的光临各位&#xff0c;希望和大家一起进步&#xff0c;望得到你的三连&#xff0c;互三支持&#xff0c;一起进步 个人主页&#xff1a;LaNzikinh-CSDN博客 文章目录 前言一.引用二.内联函数三.类和对象总结 前言 之前讲c的命令空间和第一个程序的运行&#xff0c;继…

Aixos食用指南,超全面详细讲解!

前言&#xff1a;axios是目前最流行的ajax封装库之一&#xff0c;用于很方便地实现ajax请求的发送。特意花费了两个小时为大家准备了一份全面详细的Aixos食用指南&#xff0c;需要的小伙伴点个关注 哦~&#x1f495; &#x1f308;&#x1f308;文章目录 Axios 简介 Axios 特…

vue实现卡片遮罩层交互式功能

前言 在前端开发中&#xff0c;卡片遮罩层是一种常见的交互设计元素&#xff0c;用于强调某个区域或内容&#xff0c;并提供用户操作的入口。本文将带大家在 vue 中结合实际案例实现此功能。 实现效果 完整代码 html <template><!-- 主容器 --><div class&quo…

ctfshow WEB刷题

web1 直接右键打开&#xff0c;在源代码里 web2 ctrlu查看源码 web3 打开bp抓包发送直接就得到了 web4 用dirsearch扫描发现txt文件 访问 接着访问得到flag web5 用dirbuster扫描看看有没有phps源码泄露&#xff0c;发现存在 访问下载文件打开就是flag web6 用dirsearch扫…

ES6笔记总结(Xmind格式):第三天

Xmind鸟瞰图&#xff1a; 简单文字总结&#xff1a; ES6知识总结&#xff1a; Promise的使用: 1.使用 new Promise() 构造函数来创建一个 promise 对象 2.接受两个函数作为参数&#xff1a;resolve 和 reject ①resolve 函数在异步操作成功完成时调用&#xf…

python办公自动化:初识`python-docx`

1.1 什么是python-docx python-docx是一个用于在Python中创建和操作Word文档的库。它提供了一组简洁的API&#xff0c;让开发者可以轻松地生成、修改、和读取Microsoft Word (.docx)文件&#xff0c;而不需要安装Microsoft Office。这使得python-docx成为办公自动化、报告生成…

特征工程中预处理中,字符串转成元组

要在函数内部实现将 saved_feature_combinations 转换为元组形式&#xff0c;可以在检查 saved_feature_combinations 是否为空后&#xff0c;直接将它们转换为元组。你可以在现有逻辑的基础上添加转换步骤。 def process_and_save_combinations(self, saved_feature_combinat…

python构建一个web程序

from flask import Flaskapp Flask(__name__)app.route(/) def hello_world():return 欢迎来到我的Python Web程序!if __name__ __main__:app.run(debugTrue)1、安装flask D:\Users\USER\PycharmProjects\pythonProject1\p01>pip install flask WARNING: Ignoring invalid…

服务器五大关键组件拆解分析

拆解服务器五大关键组件 "AI服务器五大硬件揭秘&#xff1a;深入剖析PCB构造&#xff0c;揭示内部真实面貌。本文通过一步步拆解PCB,为读者呈现了一台服务器的内部世界&#xff0c;力求让您对服务器升级的潜在价值有更深的理解和把握。" 1、五大硬件部分可归纳为——…

自定义开屏启动广告页

自定义开屏启动广告页 文章目录 自定义开屏启动广告页效果图简单版轮播方式css 效果图 简单版 图片 倒计时 <template><view class"guide fcc" :style"{ background: url(${ imgUrl }) no-repeat}"><view class"skip_btn" cli…