m1n9yu3-博客园

php 学习笔记

php 学习记录

开始学习 php 了, 为了以后的代码审计, 还想进军 web的

环境搭建

phpstudy , 一键部署, 舒服。

注意: 安装路径 不要带有 中文名,

数据库默认账户
root:root

简单程序

<?php
echo "这是一个简单的 php 程序";
?>

需要使用 来包含代码, php 代码可以在 .php 结尾的文件里,也可以在 .html 文件里

注释, 使用 和 c/c++ 一样的语法格式 单行 // 多行/* */

每一条语句, 都必须使用 ; 来结尾

打印输出

echo 和 print 区别:

echo - 可以输出一个或多个字符串
print - 只允许输出一个字符串,返回值总为 1

提示:echo 输出的速度比 print 快, echo 没有返回值,print有返回值1。

<?php
echo "print 和 echo<br>";

$text = "m1n9yu3";

print $text;
print "我的名字是: $text ";

echo "<br>";
echo $text, 'fdsafdsf','dsafdsf';
?>

php 数据类型

String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值)。

可以使用 var_dump(obj) 函数, 来打印 对象的类型

<?php
// string 类型
$text = '我是一个文本类型的数据';
// 整数类型
$Int = 10;
// 浮点类型
$Float = 8.888;
// 布尔类型
$Bool = true;
// 数组类型
$Array = array('1','2','3');
// 类对象
class Car
{
  var $color;
  function __construct($color="green") {
    $this->color = $color;
  }
  function what_color() {
    return $this->color;
  }
}
// NULL 值, 可以清空一个数据的指向
$Null = null;
var_dump($Int)
?>

基础语法

包含 类型比较, 循环,分支, 运算符,常量,字符串

类型比较

== : 只比较值, 不比较类型

===: 比较值,也比较类型

<?php

$a = '1';
$b = 1;
$c =  $a === $b;
echo $a == $b;
echo "<br>";
echo $c;
?>

正确,就显示,不正确就不显示

常量

语法

bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )`

<?php
// 区分大小写的常量名
define("GREETING", "欢迎访问 Runoob.com");
echo GREETING;    // 输出 "欢迎访问 Runoob.com"
echo '<br>';
echo greeting;   // 输出 "greeting"
?>

常量是全局的

字符串

字符串变量

<?php
$text = "hello world";
echo $text;
?>

字符串运算符只有一个 . 称为 并置运算符
用于把两个字符串值连接起来

<?php
$txt1="Hello world!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>

常用函数

strlen(string_obj) 字符串长度 (字节数)
strpos(string_obj) 用于在字符串内查找一个字符或一段指定的文本, 匹配到,返回第一个匹配到的位置, 匹配不到,返回 false;

运算符

数值运算符

+ 加
- 减
* 乘
/ 除
% 取模
- 取反
. 并置

赋值运算符

= 赋值, 可以使用 += -= *= 之类的 复合运算符

自增自减

++ -- , 语法和 c一致

比较运算符
== 等于
=== 绝对等于
!= 不等于
<> 不等于
!== 绝对不等于
> 大于
< 小于
>= 大于等于
<= 小于等于

逻辑运算符

and 与
or 或
xoe 异或
&& 与
|| 或
! 非

数组运算符
+ 集合
== 相等
=== 恒等
!= 不相等
<> 不相等
!== 不恒等

分支

if else 语句

if (条件)
{

    条件成立时要执行的代码;

}
if (条件)
{
条件成立时执行的代码;
}
else
{
条件不成立时执行的代码;
}
if (条件)
{
    if 条件成立时执行的代码;
}
elseif (条件)
{
    elseif 条件成立时执行的代码;
}
else
{
    条件不成立时执行的代码;
}

switch 语句

<?php
switch (n)
{
case label1:
    如果 n=label1,此处代码将执行;
    break;
case label2:
    如果 n=label2,此处代码将执行;
    break;
default:
    如果 n 既不等于 label1 也不等于 label2,此处代码将执行;
}
?>

循环

while 循环

while (条件)
{
    要执行的代码;
}
do

{
    要执行的代码;
}
while (条件)

for 循环

for (初始值; 条件; 增量)
{
    要执行的代码;
}

foreach 用于遍历数组

foreach ($array as $value)
{
    要执行代码;
}

函数

函数 编程, 可以减少代码量

<?php
function functionName()
{
    // 要执行的代码
}
?>

函数是可以通过调用函数来执行的。
可以在页面的任何位置调用函数

php 函数准则

  • 函数的名称应该提示出它的功能
  • 函数名称以字母或下划线开头(不能以数字开头)

简单示例

<?php
function writeName()
{
    echo "Kai Jim Refsnes";
}
 
echo "My name is ";
writeName();
?>

课后练习

写一个 简单的登录处理程序, 可以处理登录事件。

占坑, 还在问大师傅。

问完回来了

<!DOCTYPE html>
<html>
<head>
	<title>login the page</title>
</head>
<body>

	<center>
		
			<form action="http://localhost/login/login.php" method="get">
		<input type="text" name="user">
		<br>
		<input type="text" name="passwd">
		<br>
		<input type="submit" name="submit" value="登录">
	</form>

	</center>

</body>
</html>
<?php
$user = $_GET['user'];
$passwd = $_GET['passwd'];

// echo "user: ",$user;
// echo '<br>';
// echo "passwd: ",$passwd;


if ($user === "admin" and $passwd === 'passwd'){

	echo "<h1> 通过验证, 登录成功!!!</h1>";
}else{
	echo "<h1> 登录失败 </h1>";
}


?>


当密码是 passwd, 用户名是 user 的时候, 才算是成功登录

posted @ 2021-02-16 20:50  m1n9yu3  阅读(105)  评论(0编辑  收藏  举报