php基础

目录

php基本环境

php为什么是服务端脚本语言

基本的 PHP 语法

实验:我的第一个页面

php语言的报错

php语言的注释

php输出文本的指令

php输出文本的基本指令

php输出其他数据格式的指令

PHP EOF(heredoc) 使用说明

使用概述:

用法:

注意事项:

php语言的数据类型

php字符串

php 整数

php 浮点型

php 布尔型

php 数组

php 对象

php NULL值

php 资源类型

php类型比较

PHP 运算符

PHP 字符串运算符

PHP 赋值运算符

PHP 算术运算符

PHP 递增/递减运算符

PHP 逻辑运算符

PHP 比较运算符

PHP 数组运算符

括号的使用



PHP 基本环境

在Windows环境中,我们可以采用vicode+phpstudy结合来作为我们学习php语言的基础环境,其中vicode作为编写php脚本的文本编辑器,phpstudy中的apache服务可以让我们用浏览器来查看php代码的执行结果

vicode官网:https://code.visualstudio.com/

phpstudy官网:https://www.xp.cn/

PHP 为什么是服务端脚本语言

PHP(全称:Hypertext Preprocessor,超文本预处理器)是一种通用开源脚本语言

PHP 脚本在服务器上执行,然后将纯 HTML 结果发送回浏览器,即php只在浏览器中回显,并不像其他语言(python,java、c等)一样可以直接运行并回显

怎么理解: 前端页面:HTML和JS、CSS

后端页面:PHP、JSP、ASP、ASPX等等

基本的 PHP 语法

PHP 脚本可以放在文档中的任何位置

php脚本有特定的格式,以<?php为开启,以?>为结尾,具体如下:

<?php 
// php代码
?>

PHP 文件的默认文件扩展名是 ".php"(如果有.htaccess文件,也可以用其他的后缀识别成 php)。

PHP 文件通常包含 HTML 标签和一些 PHP 脚本代码。

下面,我们提供了一个简单的 PHP 文件实例,它可以向浏览器输出文本 "Hello World!"

<!DOCTYPE html>
<html>
<body>
<h1>My first PHP page</h1> //HTMl标签
<?php
echo "Hello World!"; //echo = 输出
?>
</body>
</html>

PHP 中的每个代码行都必须以分号结束。分号是一种分隔符,用于把指令集区分开来。

实验:我的第一个页面

实验步骤如下:

  1. 安装后开始phpstudy的站点,直接点击启动即可
  2. 部署网站,在网站栏目下选择新建,如果有默认的可以删除
  3. 将代码写入到网站根目录,我的就叫做first.php
  4. 访问人生中的第一个网站

网站代码可以参照上面,写出一个在浏览器中输出Hello,World!的页面

下面介绍几种访问本地页面的方式

本地环回地址访问http://127.0.0.1/first.php 或者http://localhost/first.php

本地IP地址访问,先查看自己电脑的IP地址,调出cmd窗口,输入ipconfig查看IP

然后输入有线/无线IP地址去访问,比如我的是192.168.110.93,于是浏览器上输入http://192.168.110.93/first.php

PHP 语言的报错

php语言的报错会在浏览器中输出文件的具体位置和具体的报错行数,如下:

PHP 语言的注释

php语言的注释有两种,分别是单行注释和多行注释,如下:

<!DOCTYPE html>
<html>
<body>
<?php
// 这是 PHP 单行注释
/*
这是
PHP 多行
注释
*/
?>
</body>
</html>

PHP 输出文本的指令

PHP 输出文本的基本指令

在php中有两种在浏览器中输出文本的基础指令(也可叫做函数,函数我们在后面介绍)

php中的echoprint语句

echo 和 print 区别:

  • echo - 可以输出一个或多个字符串

  • print - 只允许输出一个字符串,返回值总为 1

  • echo 是一个语言结构,使用的时候可以不用加括号,也可以加上括号: echo 或 echo()

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

echo演示:

<?php

$txt1="Learn PHP";
$txt2="www.php.cn";
$cars=array("Volvo","BMW","Toyota");

echo  "<br>";
echo  "Study PHP at $txt2";
echo  "<br>";
echo  "My car is a {$cars[0]}";

// echo输出变量
echo  $txt1;
?>

print演示:

<?php
$txt=wanyyds

print "<h2>PHP is fun!</h2>";
print "Hello world!<br>";
print "I'm about to learn PHP!<br>";
print "This", " string", " was", " made", " with multiple parameters.";

//print输出变量
print($txt)
?>

PHP 输出其他数据格式的指令

1、echo

输出一个或者多个字符串

2、print

print仅支持一个参数,并总是返回1

3、print_r

打印关于变量的易于理解的信息,如果给出的是string、integer或float,将打印变量值本身。如果给出的是array,将会安装一定格式显示键和元素

4、var_dump

此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构

5、var_dump和print_r的区别

var_dump返回表达式的类型与值而print_t仅返回结构,相比调试代码使用var_dump更便于阅读

代码:

<?php
$name="wan";
$a=array("Volvo","BMW","Toyota");
// 结果独立一行且前后不能有空格
echo $a;
echo "<br>";
print($a);
echo "<br>";
print_r($a);
echo "<br>";
var_dump($a)
?>

PHP EOF(heredoc) 使用说明

PHP EOF(heredoc)是一种在命令行shell(如sh、csh、ksh、bash、PowerShell和zsh)和程序语言(像Perl、PHP、Python和Ruby)里定义一个字符串的方法。

当然,EOF相当于""号,我们可以选择使用""来表示字符串,不过EOF使用场景更加广泛

使用概述:

  • 必须后接分号,否则编译通不过。
  • EOF 可以用任意其它字符代替,只需保证结束标识与开始标识一致。
  • 结束标识必须顶格独自占一行 (即必须从行首开始,前后不能衔接任何空白和字符)
  • 开始标识可以不带引号或带单双引号,不带引号与带双引号效果一致,解释内嵌的变量和转义符号,带单引号则不解释内嵌的变量和转义符号。
  • 当内容需要内嵌引号(单引号或双引号)时,不需要加转义符,本身对单双引号转义,此处相当与q和qq的用法。

用法:

<?php
echo <<<EOF
        <h1>这是第一个标题</h1>
        <p>这是第一个段落。</p>
EOF;
// 结束需要独立一行且前后不能空格
?>

注意事项:

1.以 <<<EOF 开始标记开始,以 EOF 结束标记结束,结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。

2.开始标记和结束标记相同,比如常用大写的 EOT、EOD、EOF 来表示,但是不只限于那几个(也可以用:JSON、HTML等),只要保证开始标记和结束标记不在正文中出现即可。

3.位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。在 heredoc 中,变量不需要用连接符 . 或 , 来拼接,如下:

<?php
$name="wan";
$a= <<<EOF
        "abc"$name
        "123"
EOF;
// 结束需要独立一行且前后不能空格
echo $a;
?>

PHP 语言的数据类型

PHP 支持以下几种数据类型:

  • String(字符串)
  • Integer(整型)
  • Float(浮点型)
  • Boolean(布尔型)
  • Array(数组)
  • Object(对象)
  • NULL(空值)
  • Resource(资源类型)

PHP字符串

一个字符串是一串字符的序列,就像 "Hello world!"

你可以将任何文本放在单引号和双引号中,如下代码

<?php 
$x = "Hello world!";
echo $x;
echo "<br>"; 
$y = 'Hello world!';
echo $x.$y;
?>

PHP 整数

整数是一个没有小数的数字

整数规则:

  • 整数必须至少有一个数字 (0-9)

  • 整数不能包含逗号或空格

  • 整数是没有小数点的

  • 整数可以是正数或负数

  • 整型可以用三种格式来指定:十进制, 十六进制( 以 0x 为前缀)或八进制(前缀为 0)

在以下实例中我们将测试不同的数字:

<?php 
$x = 5985;
var_dump($x);
echo "<br>"; 
$x = -345; // 负数 
var_dump($x);
echo "<br>"; 
$x = 0x8C; // 十六进制数
var_dump($x);
echo "<br>";
$x = 047; // 八进制数
var_dump($x);
?>

PHP 浮点型

浮点数是带小数部分的数字,或是指数形式

在以下实例中我们将测试不同的数字PHP var_dump() 函数返回变量的数据类型和值:

<?php 
$x = 10.365;
var_dump($x);
echo "<br>"; 
$x = 2.4e3;
var_dump($x);
echo "<br>"; 
$x = 8E-5;
var_dump($x);
?>

PHP 布尔型

布尔型可以是 TRUE 或 FALSE

布尔型通常用于条件判断

$x=true;
$y=false;

PHP 数组

数组可以在一个变量中存储多个值

在以下实例中创建了一个数组, 然后使用 PHP var_dump() 函数返回数组的数据类型和值

<?php 
$cars=array("Volvo","BMW","Toyota");
var_dump($cars);
?>

PHP 对象

对象数据类型也可以用于存储数据

在 PHP 中,对象必须声明

首先,你必须使用class关键字声明类对象。类是可以包含属性和方法的结构

然后我们在类中定义数据类型,然后在实例化的类中使用数据类型:

<?php
class Car
{
  var $color;
  function __construct($color="green") {
    $this->color = $color;
  }
  function what_color() {
    return $this->color;
  }
}
?>

PHP NULL值

NULL 值表示变量没有值。NULL 是数据类型为 NULL 的值

NULL 值指明一个变量是否为空值。 同样可用于数据空值和NULL值的区别

可以通过设置变量值为 NULL 来清空变量数据:

<?php
$x="Hello world!";
$x=null;
var_dump($x);
?>

PHP 资源类型

PHP 资源 resource 是一种特殊变量,保存了到外部资源的一个引用

常见资源数据类型有打开文件、数据库连接、图形画布区域等

由于资源类型变量保存有为打开文件、数据库连接、图形画布区域等的特殊句柄,因此将其它类型的值转换为资源没有意义

使用 get_resource_type() 函数可以返回资源(resource)类型:

get_resource_type(resource $handle): string

此函数返回一个字符串,用于表示传递给它的 resource 的类型。如果参数不是合法的 resource,将产生错误

如下实例:

<?php
$c = mysql_connect();
echo get_resource_type($c)."\n";
// 打印:mysql link

$fp = fopen("foo","w");
echo get_resource_type($fp)."\n";
// 打印:file

$doc = new_xmldoc("1.0");
echo get_resource_type($doc->doc)."\n";
// 打印:domxml document
?>

PHP 类型比较

PHP 是一门弱类型语言

我们需要明白变量类型及它们的意义,因为我们经常需要对 PHP 变量进行比较

包含松散比较和严格比较

  • 松散比较:使用两个等号 == 比较,只比较值,不比较类型
  • 严格比较:用三个等号 === 比较,除了比较值,也比较类型
<?php
header("content-type:text/html;chaeset=utf-8"); //保持中文不乱码
if(42 == "42") {
    echo '1、值相等';
}
 
echo "<br>" //换行

if(42 === "42") {
    echo '2、类型相等';
} else {
    echo '3、类型不相等';
}
?>

以上实例输出结果为:

1、值相等
3、类型不相等

PHP中 比较 0、false、null

<?php
echo '0 == false: ';
var_dump(0 == false);
echo '0 === false: ';
var_dump(0 === false);
echo "</br>";
echo '0 == null: ';
var_dump(0 == null);
echo '0 === null: ';
var_dump(0 === null);
echo "</br>";
echo 'false == null: ';
var_dump(false == null);
echo 'false === null: ';
var_dump(false === null);
echo "</br>";
echo '"0" == false: ';
var_dump("0" == false);
echo '"0" === false: ';
var_dump("0" === false);
echo "</br>";
echo '"0" == null: ';
var_dump("0" == null);
echo '"0" === null: ';
var_dump("0" === null);
echo "</br>";
echo '"" == false: ';
var_dump("" == false);
echo '"" === false: ';
var_dump("" === false);
echo "</br>";
echo '"" == null: ';
var_dump("" == null);
echo '"" === null: ';
var_dump("" === null);
?>

以上实例输出结果为:

PHP 运算符

PHP 字符串运算符

在 PHP 中,只有一个字符串运算符并置运算符

并置运算符 (.) 用于把两个字符串值连接起来。

下面的实例演示了如何将两个字符串变量连接在一起

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

上面的代码将输出:Hello world! What a nice day!

PHP 赋值运算符

以下案例演示了使用不同赋值运算符得到的不同结果:

<?php 
$x=10; 
echo $x."</br>"; // 输出10

$y=20; 
$y += 100;
echo $y."</br>"; // 输出120

$z=50;
$z -= 25;
echo $z."</br>"; // 输出25

$i=5;
$i *= 6;
echo $i."</br>"; // 输出30

$j=10;
$j /= 5;
echo $j."</br>"; // 输出2

$k=15;
$k %= 4;
echo $k."</br>"; // 输出3
?>

PHP 算术运算符

以下实例演示了使用不同算术运算符得到的不同结果:

<?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;
?>

PHP 递增/递减运算符

以下实例演示了使用递增/递减运算符得到的结果:

<?php
$x=10; 
echo ++$x; // 输出11,相当于$x+1

$y=10; 
echo $y++; // 输出10,先输出$y然后再+1,实际$y还是10

$z=5;
echo --$z; // 输出4,相当于$z-1

$i=5;
echo $i--; // 输出5,先输出$i然后再-1,实际$i还是5
?>

PHP 逻辑运算符

在 PHP 中,有四种基本的逻辑运算符:AND、OR、NOT 和 XOR,逻辑运算符一般是结合条件判断语句一起出现,我们后面再讲

逻辑运算符名称别名

逻辑与运算符

AND&&

逻辑或运算符

OR||
逻辑非运算符NOT!
逻辑异或预算符XOR结合使用

PHP 比较运算符

比较操作符可以让您比较两个值

以下实例演示了使用一些比较运算符得到的不同结果:

<?php
$x=100; 
$y="100";

var_dump($x == $y);
echo "<br>";
var_dump($x === $y);
echo "<br>";
var_dump($x != $y);
echo "<br>";
var_dump($x !== $y);
echo "<br>";

$a=50;
$b=90;

var_dump($a > $b);
echo "<br>";
var_dump($a < $b);
?>

PHP 数组运算符

以下实例演示了使用一些数组运算符得到的不同结果:

<?php
$x = array("a" => "red", "b" => "green"); 
$y = array("c" => "blue", "d" => "yellow"); 
$d = array("b" => "green","a" => "red" ); 
$z = $x + $y; // $x 和 $y 数组合并
var_dump($z);
echo "</br>";
var_dump($x == $y);
echo "</br>";
var_dump($x === $y);
echo "</br>";
var_dump($x != $y);
echo "</br>";
var_dump($x <> $y);
echo "</br>";
var_dump($x !== $y);
echo "</br>";
var_dump($x == $d);
echo "</br>";
var_dump($x === $d);
echo "</br>";
?>

括号的使用

我们通过括号的配对来明确标明运算顺序,而非靠运算符优先级和结合性来决定,通常能够增加代码的可读性

<?php
// 括号优先运算
$a = 1;
$b = 2;
$c = 3;
$d = $a + $b * $c;
echo $d;
echo "\n";
$e = ($a + $b) * $c;  // 使用括号
echo $e;
echo "\n";
?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值