百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

另辟蹊径,跟紧操作,三天学会一门编程语言

wptr33 2025-03-03 20:32 12 浏览

对于任何一门编程语言来说,学习的教材都是厚厚的一本书,从接触到掌握需要一定的时间,介于此,我将自己掌握的编程知识汇集成几个关键节点,通过三天的学习就可以基本掌握一门编程语言核心,并且能自己编写,下面废话不多说,开始第一天的内容:

学习内容PHP(为什么是PHP,因为搭建环境简单,也最容易看到效果)

一.环境搭建

下载宝塔环境windows版:
https://download.bt.cn/win/panel/BtSoft.zip

(注:为什么是宝塔,对于初学者来说,简单易上手才是维持兴趣的关键)

解压缩安装:

我知道资深程序员都瞧不上宝塔面板,认为自己手动配置的环境才是最优的,但是对于初学者来说,简单易上手才是进一步学习的关键,现在环境搭建完成,用时大约30分钟,接下来正式进入编程的学习。

一.语法构成

  1. 运行条件:

所有语句将执行在此符号之内 ?>

所有代码结束均以 “ ; ” 符号结束

“//”符号是注释,实际不执行

  1. 常量——在PHP 中,常量是固定值,一旦被定义,就不能被修改或重新定义。常量通常用于存储那些不应该改变的值,比如配置选项、数学常数等。

方式一:

define("MY_CONSTANT", "这是一个常量的值");

方式二:

const ANOTHER_CONSTANT = "另一个常量的值";

使用echo打印输出结果检验代码成果,如下图所示

  1. 变量——PHP 变量名称必须以美元符号 ($) 开头,后跟字母或下划线,然后是字母、数字或下划线的任意组合。PHP 变量是动态的,这意味着它们可以在运行时更改其数据类型或值。

变量名推荐根据用途使用英语命名,方便记忆和管理,也方便他人查看,当然也可以自己随意命名,只要按照命名规则就行。

命名规则:

  • 变量以 $ 符号开始,后面跟着变量的名称
  • 变量名必须以字母或者下划线字符开始
  • 变量名只能包含字母、数字以及下划线(A-z、0-9 和 _ )
  • 变量名不能包含空格
  • 变量名是区分大小写的($y 和 $Y 是两个不同的变量)
$username = "乔丹";
$password = "123456";
echo "姓名:".$username."+密码:".$password;//代码中的.符号起到连接字符串和变量的作用
  1. 数据类型
  • 整型(Integer)?:用于表示整数,范围从-2^31到2^31。可以表示为十进制、八进制或十六进制。例如,$deci1 = 50; $octal1 = 07; $hex = 0x45;。
  • ?浮点型(Double 或 Float)?:用于表示带有小数的数字。例如,$val1 = 50.85; $val2 = 654.26;。
  • ?字符串(String)?:用于存储文本数据。例如,$name = "乔丹";。
  • ?布尔型(Boolean)?:只有两个值:true 和 false。例如,$x = true; $y = FALSE;。
  • ?空值(NULL)?:表示一个变量没有值。例如,$nullVar = NULL;。
  • ?数组(Array)?:用于存储多个值的有序集合。例如,$arr = array(1, 2, 3);。
  • ?对象(Object)?:用于存储复杂的数据结构。例如,class MyClass {} $obj = new MyClass();。
  • ?资源(Resource)?:用于存储对外部资源的引用。例如,数据库连接。例如,$db = new mysqli();。
  • PHP的数据类型在定义过程中不用申明数据类型,直接定义数据即可,数据类型了解即可,后续在实际案例中再加深练习使用方式。
  1. 函数

内置函数——预留函数,方便我们再编程过程中处理数据以及引入文件等。

  • ?文件相关函数?:用于文件操作,如include、require、include_once、require_once等?。
  • ?数值处理函数?:包括取绝对值(abs())、进一法取整(ceil())、舍去法取整(floor())等?。
  • ?字符处理函数?:如获取字符串长度(strlen())、截取字符串(substr())、替换字符串(str_replace())、查找字符串(strpos()和strrpos())等?。
  • ?数组处理函数?:如获取数组元素数量(count())、向数组添加元素(array_push())、从数组删除元素(array_pop())、合并数组(array_merge())等?。
  • ?时间信息函数?:用于日期时间操作,如格式化日期时间(date())、将日期时间字符串转换为时间戳(strtotime())、获取当前时间戳(time())等?。
  • 基础经常使用的即可,其他内置函数可去百度查询

举例:内置函数substr() (其他内置函数自行查询并实验效果,如有不了解的可以私信沟通,非常乐意解释)

$str = "Hello, World!";
$substring = substr($str, 0, 5); // 截取从索引位置0开始的5个字符,即 "Hello"
echo $substring;

自定义函数——内置函数不能满足自己需求的,可以自定函数进行数据处理

自定义函数的意义在于将重复使用的代码放在自定义函数中,每次需要使用时可以直接调用即可,可提升编写效率,下面代码就是一个简单加法的自定义函数:

function sum(int $a, int $b) {
return $a + $b;
}
$num1 = 5;
$num2 = 10;
$total = sum($num1, $num2);
echo "总和为: $total"; // 输出: 总和为:15
  1. 运算符

最简单的运算符——赋值运算符 “=”

篇幅前端代码中变量定义就用的赋值运算符,注意这个“=”符号和我们常用计算中的等于符号意义有所不同,意味着右侧赋值表达式会为左侧运算数设置值。

进阶运算符——算数运算符“+ ,-, *, /,%”

+

加法

$x + $y

$x 与 $y 求和

-

减法

$x - $y

$x 与 $y 的差数

*

乘法

$x * $y

$x 与 $y 的乘积

/

除法

$x / $y

$x 与 $y 的商数

%

模数

$x % $y

$x 除 $y 的余数

$x=10; $y=6; //定义两个数据类型位整数的变量
echo "加法:".($x + $y); // 输出 16
echo "减法:".($x - $y); // 输出 4
echo "乘法:".($x * $y); // 输出 60
echo "除法:".($x / $y); // 输出 1.6666666666667
echo "余数:".($x % $y); // 输出 4

进阶运算符——比较运算符

==

等于

$x == $y

如果 $x 等于 $y,则返回 true。

===

全等(完全相同)

$x === $y

如果 $x 等于 $y,且它们类型相同,则返回 true。

!=

不等于

$x != $y

如果 $x 不等于 $y,则返回 true。

<>

不等于

$x <> $y

如果 $x 不等于 $y,则返回 true。

!==

不全等(完全不同)

$x !== $y

如果 $x 不等于 $y,且它们类型不相同,则返回 true。

>

大于

$x > $y

如果 $x 大于 $y,则返回 true。

<

小于

$x < $y

如果 $x 小于 $y,则返回 true。

>=

大于或等于

$x >= $y

如果 $x 大于或者等于 $y,则返回 true.

<=

小于或等于

$x <= $y

如果 $x 小于或者等于 $y,则返回 true。

";
var_dump($x === $y);//判断两个变量是否相等(包括判断数据类型是否相等),如果相等输出true,否则输出false,数据类型不同,输出为false
echo "
"; var_dump($x != $y);//判断两个变量是否不相等,如果不相等输出true,否则输出false,不同的数据类型,内容一样,判断为相等,所以输出false echo "
"; var_dump($x !== $y);//判断两个变量是否不相等(包含判断数据类型是否相等),如果不相等输出true,否则输出false,两个变量数据类型不相等,所以输出true echo "
"; $a=50;$b=90; var_dump($a > $b);//判断$a是否大于$b,成立则输出true,否则输出false echo "
"; var_dump($a < $b);//判断$a是否小于$b,成立则输出true,否则输出false ?>

(代码中的var_dump()函数用于打印显示,一个变量的内容与结构,以及类型的信息;
则为html中换行代码)

进阶运算符——逻辑运算符

and

$x and $y

如果 $x 和 $y 都为 true,则返回 true。

or

$x or $y

如果 $x 和 $y 至少有一个为 true,则返回 true。

xor

异或

$x xor $y

如果 $x 和 $y 有且仅有一个为 true,则返回 true。

&&

$x && $y

如果 $x 和 $y 都为 true,则返回 true。

||

$x || $y

如果 $x 和 $y 至少有一个为 true,则返回 true。

!

!$x

如果 $x 不为 true,则返回 true。

(逻辑运算符仅作为了解,在第二天条件语句学习中,通过实践的方式掌握使用方法)

第一天的学习内容就是以上部分,大概需要2个小时可以完成,有兴趣的朋友可以根据上的步骤自行操作,加深印象,今天的知识点仅涉及到部分基础,比如内置函数,运算符中未说到的部分可以查询手册自行学习。

(注:本人仅作为编程爱好者向广大有兴趣学习编程的朋友分享自己的编程学习过程,此文通过三天的阐述介绍PHP的基础知识,这仅为基础,后续还将分享大量的实践编程文章及视频,包括完成的程序代码都将一一奉上,仅作为自己编程兴趣的总结与记录,与诸君共勉,如在学习过程有不解之处,欢迎私信联系,我将尽最大努力为你解决)

相关推荐

每天一个AI姬,AMD核显用户有福了,AI绘画打破 NVIDIA 显卡垄断

使用StableDiffusion进行AI绘画,并不一定只能使用NVIDIA英伟达显卡,甚至,也不一定只能使用独立显卡。今天我们使用AMD6800H核显,并安装了StableDif...

NETworkManager:功能强大的网络管理与问题排除工具

关于NETworkManagerNETworkManager是一款功能强大的网络管理与问题排除工具,该工具完全开源,可以帮助广大研究人员轻松管理目标网络系统并排除网络疑难问题。该工具使用远程桌面、Po...

AMD也能深度学习+免费AI绘画:StableDiffusion+ROCm部署教程!

某国政客扇扇嘴皮子,CN玩硬件和深度学习的圈子里就掀起了一场风暴,这就是著名的嘴皮子效应(误)。没了高性能计算的A100H100倒也能理解,但是美利坚这波把RTX4090禁售了就让人无语了,所以不少做...

windows 下编译 python_rtmpstream

最近在研究数字人,看了大咖的项目(https://github.com/lipku/metahuman-stream),尝试编译此项目的依赖项目python_rtmpstream(https://gi...

如何使用 Python 操作 Git 代码?GitPython 入门介绍

花下猫语:今天,我在查阅如何用Python操作Gitlab的时候,看到这篇文章,觉得还不错,特分享给大家。文中还提到了其它几种操作Git的方法,后续有机会的话,再陆续分享之~~作者:匿蟒...

网上看了不少,终于把ZlmediaKit流媒体框架搭建起来啦

你都站在2023年代了,视频通话、视频直播、视频会议、视频监控就是风口浪尖上的猪师兄,只要你学那么一丁点,拿个高薪的工作不过分吧!我也是半瓶子晃荡的,所以路人呀,共学习,同进步!本篇开始,只讲在Lin...

MacDown:一款 macOS 的强大 Markdown 编辑器

大家好,很高兴又见面了,我是"...

ZLMediaKit安装配置和推拉流

一、ZLMediaKit库简介ZLMediaKit是一个基于...

大神赞过的:学习 WebAssembly 汇编语言程序设计

文/阿里淘系F(x)Team-旭伦随着前端页面变得越来越复杂,javascript的性能问题一再被诟病。而Javascript设计时就不是为了性能优化设计的,这使得浏览器上可以运行的本地语言一...

【Docker】部署WVP视频监控平台

回来Docker系列,今天将会跟大家分享一则关于开源WVP视频监控平台的搭建。先说结论吧,一开始按照网上说的一步一步搭建没有搭建成功,不知道是版本太旧还是我这边机器有问题,尝试了好几个不同方式的搭建都...

MongoDB+GridFS存储文件方案

GridFS是MongoDB的一个内置功能,它提供一组文件操作的API以利用MongoDB存储文件,GridFS的基本原理是将文件保存在两个Collection中,一个保存文件索引,一个保存文...

【开源】强大、创新且直观的 EDA套件

今天分享的LibrePCB是...

Ollama如何制作自己的大模型?

背景Llama3发布了,这次用了...

Ollama使用指南【超全版】

一、Ollama快速入门Ollama是一个用于在本地运行大型语言模型的工具,下面将介绍如何在不同操作系统上安装和使用Ollama。官网:https://ollama.comGithub:http...

基于区块链的价值共享互联网即时通讯应用平台源码免费分享

——————关注转发之后私信回复【源码】即可免费获取到本项目所有源码基于区块链的价值共享互联网即时通讯应用平台,是一个去中心化的任何人都可以使用的通讯网络,是一款基于区块链的价值共享互联网即时通讯AP...