PHP语言学习(跟随着dvwa的进度)

两种在浏览器输出文本的基础指令:echo 和 print

单行注释 //    多行注释/* 内容 */

PHP 变量:

与代数类似,可以给 PHP 变量赋予某个值(x=5)或者表达式(z=x+y)。

变量可以是很短的名称(如 x 和 y)或者更具描述性的名称(如 age、carname、totalvolume)。

PHP 变量规则:

  • 变量以 $ 符号开始,后面跟着变量的名称
  • 变量名必须以字母或者下划线字符开始
  • 变量名只能包含字母、数字以及下划线(A-z、0-9 和 _ )
  • 变量名不能包含空格
  • 变量名是区分大小写的($y 和 $Y 是两个不同的变量 

注意:PHP 语句和 PHP 变量都是区分大小写的。

eg. <?php

        $txt="Hello world!";

         $x=5;

        $y=10.5;

?>

全局变量、局部变量:

<?php
$x=5; // 全局变量

function myTest()
{
    $y=10; // 局部变量
    echo "<p>测试函数内变量:<p>";
    echo "变量 x 为: $x";
    echo "<br>";
    echo "变量 y 为: $y";


myTest();

echo "<p>测试函数外变量:<p>";
echo "变量 x 为: $x";
echo "<br>";
echo "变量 y 为: $y";
?>

运行结果:

测试函数内变量:

变量 x 为:
变量 y 为: 10

测试函数外变量:

变量 x 为: 5
变量 y 为:

在以上实例中 myTest() 函数定义了 $x 和 $y 变量。 $x 变量在函数外声明,所以它是全局变量 , $y 变量在函数内声明所以它是局部变量。

当我们调用myTest()函数并输出两个变量的值, 函数将会输出局部变量 $y 的值,但是不能输出 $x 的值,因为 $x 变量在函数外定义,无法在函数内使用,如果要在一个函数中访问一个全局变量,需要使用 global 关键字。

PHP global 关键字:

global 关键字用于函数内访问全局变量。

在函数内调用函数外定义的全局变量,我们需要在函数中的变量前加上 global 关键字

eg.<?php

$x=5;

$y=10;

function myTest() {

global $x,$y;

$y=$x+$y;

}

myTest();

echo $y; // 输出 15

?>

Static:

当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。

要做到这一点,请在您第一次声明变量时使用 static 关键字:

<?php

function myTest() {

static $x=0;

echo $x;

$x++;

echo PHP_EOL; // 换行符

}

myTest();

myTest();

myTest();

?>

运行结果:

0 1 2

PHP_EOL:

换行符

<?php
echo PHP_EOL;
//windows平台相当于    echo "\r\n";
//unix\linux平台相当于    echo "\n";
//mac平台相当于    echo "\r";
?>

PHP isset() 函数:

isset() 函数用于检测变量是否已设置并且非 NULL。

如果已经使用 unset() 释放了一个变量之后,再通过 isset() 判断将返回 FALSE。

若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。

同时要注意的是 null 字符("\0")并不等同于 PHP 的 NULL 常量。

eg.isset($var)

如果一次传入多个参数,那么 isset() 只有在全部参数都被设置时返回 TRUE,计算过程从左至右,中途遇到没有设置的变量时就会立即停止。

eg.isset($var1,$var2,$var3)

eg.

<?php

$var = ''; // 结果为 TRUE,所以后边的文本将被打印出来。

if (isset($var)) {

echo "变量已设置。" . PHP_EOL; }

// 在后边的例子中,我们将使用 var_dump 输出 isset() 的返回值。

// the return value of isset().

$a = "test";

$b = "anothertest";

var_dump(isset($a)); // TRUE

var_dump(isset($a, $b)); // TRUE

unset ($a); var_dump(isset($a)); // FALSE

var_dump(isset($a, $b)); // FALSE

$foo = NULL;

var_dump(isset($foo)); // FALSE

?>

PHP $_GET 变量:

详细讲解见 PHP $_GET 变量 | 菜鸟教程 (runoob.com)

认真看,讲的很好

在 HTML 表单中使用 method="get" 时,所有的变量名和值都会显示在 URL 中。

注释:所以在发送密码或其他敏感信息时,不应该使用这个方法!

然而,正因为变量显示在 URL 中,因此可以在收藏夹中收藏该页面。在某些情况下,这是很有用的。

注释:HTTP GET 方法不适合大型的变量值。它的值是不能超过 2000 个字符的。

PHP md5() 函数:

一种加密算法

详见 PHP md5() 函数 | 菜鸟教程 (runoob.com)

PHP die() 函数(也是exit() 函数):

输出一条消息,并退出当前脚本:

<?php
$site = "http://www.w3cschool.cc/";
fopen($site,"r")
or die("Unable to connect to $site");
?>

PHP fopen() 函数:

fopen() 函数打开一个文件或 URL。

(URL 是一个网页地址。URL可以由字母组成,如"runoob.com",或互联网协议(IP)地址: 192.68.20.50。大多数人进入网站使用网站域名来访问,因为 名字比数字更容易记住。

)。

语法

fopen(filename,mode,include_path,context)

参数描述
filename必需。规定要打开的文件或 URL。
mode必需。规定您请求到该文件/流的访问类型。

可能的值:

  • "r" (只读方式打开,将文件指针指向文件头)
  • "r+" (读写方式打开,将文件指针指向文件头)
  • "w" (写入方式打开,清除文件内容,如果文件不存在则尝试创建之)
  • "w+" (读写方式打开,清除文件内容,如果文件不存在则尝试创建之)
  • "a" (写入方式打开,将文件指针指向文件末尾进行写入,如果文件不存在则尝试创建之)
  • "a+" (读写方式打开,通过将文件指针指向文件末尾进行写入来保存文件内容)
  • "x" (创建一个新的文件并以写入方式打开,如果文件已存在则返回 FALSE 和一个错误)
  • "x+" (创建一个新的文件并以读写方式打开,如果文件已存在则返回 FALSE 和一个错误)
include_path可选。如果您还想在 include_path(在 php.ini 中)中搜索文件的话,请设置该参数为 '1'。
context可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。

PHP mb_substr() 函数:

从字符串中返回 "菜鸟":

<?php
echo mb_substr("菜鸟教程", 0, 2);
// 输出:菜鸟
?>

语法:mb_substr ( 字符串 , 开始位置,想输出的长度 )

PHP strpos() 函数:

查找 "php" 在字符串中第一次出现的位置:

<?php
echo strpos("I love php, I love php too!","php");
//输出:7
?>

语法:strpos(string,find,start)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值