PHP 基础编程 1

文章目录

  • 前后端交互尝试
  • php简介
  • php版本
  • php 基础语法
  • php的变量
  • 前后端交互 - 计算器体验
  • php数据类型
  • php的常量和变量的区别
  • php的运算符
    • 算数运算符
    • 自增自减
    • 比较运算符
    • 赋值运算符
    • 逻辑运算
  • php的控制结构
    • if
    • else
    • else if

前后端交互尝试

前端编程语言:JS (JavaScript) html css js
后端编程语言:php java go perl ruby python .net

前端页面代码,与后端交互大部分都需要用到form表单

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>登录页面</title></head><body><form action="zhuye.php" method="get">用户名:<input  type="text" name="username">密码:<input   type="password" name="password"><input  type="submit"></form></body></html>

在这里插入图片描述

后端页面代码

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>登录页面</title></head><body><?php$user=$_GET['username'];$pass=$_GET['password'];echo    "<h1>欢迎回来$user</h1>";echo    "<p>您的密码是:$pass</p>";?></body></html>

在这里插入图片描述

添加判断语句

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>登录页面</title></head><body><?php$user=$_GET['username'];$pass=$_GET['password'];if($user    == 'admin'  ){echo    "<h1>欢迎回来$user</h1>";echo    "<p>您的密码是:$pass</p>";}else {echo "<h1>你输入的用户不存在</h1>";}?></body></html>

php简介

PHP: Hypertext Preprocessor (超文本处理器)
PHP的作用是生成html文档

php版本

php 1.0 1995
php 2.0 1995
php 3.0 ~
php 4.0 2000
php 5.0 2004 5.0-5.6
php 7.0 2015 7.0-7.4
php 8.0 2020

php 基础语法

<?php
echo "hello <br>";
echo "Hi";
?>// 注释
// <br> html 换行

php的变量

变量:可变的值
常量:不变的值

//php中的变量用$符号后面跟变量名来表示。变量名区分大小写。
$a = 5;
$b = 6;
echo $a + $b;

变量的命名规则
1.一个有效的变量名由字母或者下划线开头,后面跟上任意数量的字母,数字,或者下划线。
2.变量名不要出现中文
3.变量名不要出现非下划线的其他特殊符号
4.变量名建议使用小写字母

不带符号,单引号,双引号的区别,
单引号:类型为字符串,字符串一定要加单引号,数字类型可以不加

<?php
//header("Content-Type: text/html; charset=utf-8");
$name = 'kobe';
echo '最喜欢的NBA球星是'.$name; //变量不加符号,遇到字符串拼接,需要加.连接
echo "<br>";
echo '最喜欢的NBA球星是$name<br>'; //单引号,不解析变量,原样输出
echo "最喜欢的NBA球星是$name<br>"; //双引号,解析变量
?>

前后端交互 - 计算器体验

前端代码

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>登录页面</title></head><body><form action="calc.php" method="get">数字1:<input  type="text" name="num1">数字2:<input  type="text" name="num2"><input  type="submit"></form></body></html>

后端代码

<?phpheader("Content-Type: text/html; charset=utf-8");$a = $_GET['num1'];$b = $_GET['num2'];$c = $a + $b;$d = $a - $b;$e = $a * $b;$f = $a / $b;echo $a.'+'.$b.'='.$c;echo "<br>";echo $a.'-'.$b.'='.$d;echo "<br>";echo $a.'*'.$b.'='.$e;echo "<br>";echo $a.'/'.$b.'='.$f;?>

php数据类型

布尔类型 0 1 | true false (主要用来做判断)

$a=true;

整型 整数 -888 +4562

$a=1;

浮点型 小数 -1.0 3.545646

$a=1.0;

字符串 hi 单引号包裹

$a='aaaaa';

数组(一个变量需要存一组数字,则需要用到数组)

$a-array('1','2','3');
$a-array('a','b','c');//数组可以存储 数字,字符串,子数组

对象 object

$b = new class A;

资源类型 resource (打开文件)

NULL 空

php的常量和变量的区别

php常量最好是全部大写,用define定义,且不能改,不允许重复声明,常量在引用的时候直接引用
变量需要加 $ 符号,变量可以重新赋值

define("CONSTANT","HELLO.");
echo CONSTANT; // outputs "Hello world."
echo Constant; // 输出 "Constant" 并发出一个提示性信息

php的运算符

算数运算符

1、x+y   x和y的和
2、x-y   x和y的差
3、x*y   x和y的积
4、x/y   x和y的商
5、x%y   x除以y的余数
6、-x    x取负数
7、a.b   连接两个字符串- 存在优先级 -乘除 > . > 加减
<?php
$x=10;
$y=6;
echo ($x + $y); // 输出16
echo '<br>'; // 换行
echo ($x - $y); // 输出4
echo '<br>'; // 换行
echo ($x * $y); // 输出60
echo '<br>'; // 换行
echo ($x / $y); // 输出1.6666666666667
echo '<br>'; // 换行
echo ($x % $y); // 输出4
echo '<br>'; // 换行
echo -$x;
?>

BMI 计算案例,简易代码

前端代码

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>登录页面</title></head><body><form action="bmi.php" method="get">体重:<input   type="text" name="num1">身高:<input   type="text" name="num2"><input  type="submit"></form></body></html>

后端代码

<?phpheader("Content-Type: text/html; charset=utf-8");$a = $_GET['num1'];$b = $_GET['num2'];$c = $b / 100;echo $a.'/'.$c.'*'.$c.'='.($a / ($c * $c));echo "<br>";?>

自增自减

1、++ x   预递增   x加1,然后返回x
2、x ++   后递增   返回x,然后x加1
3、-- x   预递减   x减1,然后返回x
4、x --   后递减   返回x,然后x减1

比较运算符

1、x == y   等于   如果x等于y,则返回true,不比较数据类型
2、x === y  绝对等于 如果x等于y,且它们类型相同,则返回ture,比较数据类型
3、x != y   不等于  如果x不等于y,则返回true
4、x <> y   不等于  如果x不等于y,则返回true
5、x !== u  绝对不等于  然后x不等于y,或它们类型不相同,则返回true
6、x > y    大于    如果x大于y,则返回true
7、x < y    小于    如果x小于y,则返回true
8、x >= y   大于等于  如果x大于或者等于y,则返回true
9、x <= y   小于等于  如果x小于或者等于y,则返回true

比较代码,更清晰的理解

<?phpheader("Content-Type: text/html; charset=utf-8");$a="10";var_dump($a);echo"<br>";$b= 10;var_dump($b);echo "<br>";if ($a == $b) {echo "相等";} else {echo "不相等";}?>

赋值运算符

1、x = y    x = y  左操作数设置为右侧表达式的值
2、x += y   x = x+y  加
3、x -= y   x = x-y  减
4、x *= y   x = x*y  乘
5、x /= y   x = x/y  除
6、x %= y   x = x%y  模
7、a .= b   a = a.b  连接两个字符串

逻辑运算

1、x and y  与  如果x和y都为true,则返回true
2、x or y   或  如果x和y至少有一个为true,则返回true
3、x xor y  异或  如果x和y有且仅有一个为true,则返回true
4、x && y   与 
5、x || y   或
6、!x       非,取反   如果x不为true,则返回true

php的控制结构

if

<?phpheader("Content-Type: text/html; charset=utf-8");$a=rand(0,10);$b= $a % 2;if ($b == 1)    {echo"这是一个奇数";}  echo"<br>";echo "随机值是$a";?>

else

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>登录页面</title></head><body><form action="zhuye.php" method="get">用户名:<input  type="text" name="username">密码:<input   type="text" name="password"><input  type="submit"></form></body></html>

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>登录页面</title></head><body><?php$user=$_GET['username'];$pass=$_GET['password'];if($user    == 'admin' and $pass == '123456' ){echo    "<h1>欢迎回来$user</h1>";echo    "<p>您的密码是:$pass</p>";}else {echo "<h1>你输入的密码不正确</h1>";}?></body></html>

else if

<?php/*100 满分80 - 100 优秀70 - 80  良好60 - 70  及格< 60     重修*/header("Content-Type: text/html; charset=utf-8");$a = rand(0,100);echo "你的成绩是:$a <br>";if ($a < 60) {echo"重修";}else if ($a < 70) {echo"及格";}else if ($a < 80) {echo"良好";}else {echo"优秀";}?>

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

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

相关文章

印象笔记02: 笔记本管理系统和空间使用

印象笔记02&#xff1a; 笔记本管理系统和空间使用 印象笔记新建笔记是一件非常容易的事情。笔记多了&#xff0c;就是归纳到笔记本里。 印象笔记一共有三层的笔记结构&#xff1a;最高层级是笔记本组&#xff0c;其次是笔记本&#xff0c;最后是一个个的笔记。合理的分类能够…

有什么安全处理方案可以有效防护恶意爬虫

常见的爬虫 有百度爬虫、谷歌爬虫、必应爬虫等搜索引擎类爬虫&#xff0c;此类爬虫经常被企业用于提高站点在搜索引擎内的自然排名&#xff0c;使得站点在各大搜索引擎中的排名能够提高&#xff0c;进一步通过搜索引擎来进行引流为企业增加业务流量。 恶意爬虫与合法、合规的搜…

如何通过内网穿透实现无公网IP远程访问内网的Linux宝塔面板

文章目录 一、使用官网一键安装命令安装宝塔二、简单配置宝塔&#xff0c;内网穿透三、使用固定公网地址访问宝塔 正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。…

python中parsel模块的css解析

一、爬虫页面分类 1.想要爬取的内容全部在标签中&#xff0c;可以使用xpath去进行解析如下图 2.想要爬取的内容呈现json的数据特征&#xff0c;用.json()转换为字典格式 3.页面不规则&#xff0c;标签中包含大括号&#xff0c;如下面想要获取键值内容怎么做&#xff0c;先用re正…

RFM会员价值度模型

模型基本原理 会员价值度用来评估用户的价值情况&#xff0c;是区分会员价值的重要模型和参考依据&#xff0c;也是衡量不同营销效果的关键指标。 价值度模型一般基于交易行为产生&#xff0c;衡量的是有实体转化价值的行为。常用的价值度模型是RFM RFM模型是根据会员 最近…

本地引入Element UI后导致图标显示异常

引入方式 npm 安装 推荐使用 npm 的方式安装&#xff0c;它能更好地和 webpack 打包工具配合使用。 npm i element-ui -SCDN 目前可以通过 unpkg.com/element-ui 获取到最新版本的资源&#xff0c;在页面上引入 js 和 css 文件即可开始使用。 <!-- 引入样式 --> <…

Supershell反溯源配置

简介 项目地址&#xff1a;https://github.com/tdragon6/Supershell Supershell是一个集成了reverse_ssh服务的WEB管理平台&#xff0c;使用docker一键部署&#xff08;快速构建&#xff09;&#xff0c;支持团队协作进行C2远程控制&#xff0c;通过在目标主机上建立反向SSH隧…

百度地图打点性能优化(海量点、mapv)

文章目录 百度地图打点性能优化&#xff08;海量点、mapv&#xff09;原因优化方法数据获取方面页面加载方面 参考资料 百度地图打点性能优化&#xff08;海量点、mapv&#xff09; 原因 在百度地图api中&#xff0c;默认的点是下图的红点 而这种点位比较多的时候&#xff0c…

《程序员的自我修养--链接,装载与库》

第一章&#xff1a;温故而知新 过度优化的问题&#xff1a; 我们知道volatile关键字可以阻止过度优化&#xff0c;因为它可以完成两件事&#xff1a; 阻止编译器为了提高速度将一个变量缓存到寄存器而不写回阻止编译器调整操作volatile变量的指令顺序 然而&#xff0c;在优…

【开源】基于JAVA的中小学教师课程排课系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 角色管理模块2.2 课程档案模块2.3 排课位置模块2.4 排课申请模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 角色表3.2.2 课程表3.2.3 排课位置表3.2.4 排课申请表 四、系统展示五、核心代码5.1 查询课程5.2 新增课…

【Golang】Json 无法表示 float64 类型的 NaN 以及 Inf 导致的 panic

【Golang】Json 无法表示 float64 类型的 NaN 以及 Inf 导致的 panic 原因 golang 服务出现了 panic&#xff0c;根据 panic 打印出的堆栈找到了问题代码&#xff0c;看上去原因是&#xff1a;json 序列化时&#xff0c;遇到了无法序列化的内容 [panic]: json: unsupported …

转后端一年半双非本科Java无实习进大厂,给双非朋友经验分享

背景介绍 B站有详细视频&#xff0c;同名搜索即可。 今天文章想分享的是我踩过的坑以及那些做的是值得大家参考。 有需要就加V&#xff1a; zhazhagao_ 进了快手(如果你觉得不是大厂那就不是!)&#xff1a; 真双非本科: 安徽某双非无实习: 因为编程语言问题,去过之后发现不喜欢…