PHP学习一(基础环境搭建、基本语法、变量、常量、运算符、if、switch、while、for)

PHP学习

一、概述

PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言,吸取了C语言、Java和Perl等语言特点,目标是让开发者快速编写动态页面,不需要编译(可以与html混编),运行在服务端,运行需要php环境(windows的php study…)

二、基础环境搭建

使用win 2008虚拟机搭建。

  1. 下载php study
    下载地址:https://www.xp.cn/download.html

phpStudy是一个PHP调试环境的程序集成包。该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境.该程序不仅包括PHP调试环境,还包括了开发工具、开发手册等,总之学习PHP只需一个包。

  1. 解压

在这里插入图片描述

  1. 启动php study

可能缺少VC9运行库,需要安装VC9运行库。

在这里插入图片描述
成功启动:

在这里插入图片描述
查看端口号:已经启动80和3306端口

在这里插入图片描述

  1. 测试访问
    访问在浏览器输入:localhost.,就可以打开“探针”
    php探针是用来探测空间、服务器运行状况和PHP信息用的,探针可以实时查看服务器硬盘资源、内存占用、网卡流量、系统负载、服务器时间等信息。
    在这里插入图片描述

也可以关闭虚拟机防火墙,在主机上访问虚拟机IP地址。

  1. mysql数据库连接测试
    默认用户名:root,密码:root
    在这里插入图片描述
    在这里插入图片描述

三、目录文件

1. web根目录

在php study安装目录下的:WWW目录

该目录下有三个默认的文件:

在这里插入图片描述

  • l.php:就是我们访问的php探针页面
  • phpinfo.php:php的版本信息
<?php
 phpinfo(); 
?>
  • phpMyAdmin:通过互联网控制和操作MySQL。通过phpMyAdmin可以完全对数据库进行操作,例如建立、复制/删除数据等等。有了phpMyAdmin 就可以完全不使用mysql命令,直接使用phpMyAdmin就能管理mysql的所有数据和数据库。

2. Apache配置文件

目录:\Apache\conf\httpd.conf

3. Apache日志文件

目录:\Apache\logs

4. MySQL文件

将mysql添加到系统环境变量中,复制mysql\bin的路径添加到系统环境变量的path里即可。

在这里插入图片描述
mysql配置文件路径:E:\phpstudy\MySQL\my.ini

5. php配置文件

根据php版本,配置系统环境变量
在这里插入图片描述
在这里插入图片描述

php配置文件路径:E:\phpstudy\php\php-5.4.45\php.ini

四、基本语法

1. 第一个php程序

在WWW目录下新建一个.php文件:

<?php
phpinfo();
?>

测试访问:

在这里插入图片描述

2. 基本语法

  1. 开始标记:<?php
    结束标记:?>
  2. php用分号表示一个语句结束;
  3. 注释
// 这是单行注释

/*
多行注释
多行注释
...
*/

注意:php代码中的注释不会显示在浏览器的源代码里,php运行的环境是服务器,浏览器看到的是php引擎运行代码后的执行结果。

3. 变量

3.1 变量的声明

不需要声明变量,但需要初始化变量,当第一次给一个变量赋值时,才创建了这个变量,变量可以存储数字、文本、字符串或数组,可以重复使用一个变量。

php中变量必须使用一个$符号+变量名,使用=给变量赋值。

示例:

<?php
echo $name;
echo "<br />";
$name = "hello";
echo $name;
?>

运行结果:

在这里插入图片描述

  • 注意:
  1. php代码是顺序执行;
  2. php中的错误类型:
    Error:结束脚本执行
    Warning:只提示,不影响执行;
    Notice:一些语法错误提示
3.2 释放变量

unset(变量)

示例:

<?php
$name = "hello";
echo $name;
echo "<hr />";
unset($name);
echo $name;
?>

运行结果:

在这里插入图片描述

3.3 变量的命名
  1. 严格区分大小写;
  2. 字母、数字、下划线,但不能以数字开头;
  3. 尽量不要使用关键字
3.4 可变变量

$$

动态的设置和使用一个变量。

<?php
$name = "aaa";
$$name = "bbb";
echo $name;
echo "<hr />";
echo $aaa;  
/* 
简单理解:
       aaa = "aaa" = $name   
  所以:$aaa = $$name = bbb
*/
?>

运行结果:

在这里插入图片描述

3.5 变量的引用赋值

&$

简单理解,就是给变量起了一个别名,引用赋值后,值一起变化!

示例:

<?php
$a = 10;
$b = $a;
$b = $b+1;
echo $a;
echo "|";
echo $b;

echo "<hr />";
// 相当于给变量a起了一个别名叫c,此后a随着c的改变而改变
$c = &$a;
$c = $c+10;
echo $a;
echo "|";
echo $c;
?>

运行结果:

在这里插入图片描述

3.6 变量类型
1. 布尔类型(bool)
<?php
$a = false;
$b = true;
echo $a;
echo $b;
echo "<hr />";
var_dump($a);
var_dump($b);
?>

运行结果:

在这里插入图片描述

  • 注意:
  1. echo输出false时,输出为空;输出true为1;var_dump():数据类型和值;
  2. 以下的内容会被认为false,其他均会被认为true:
布尔值 false
0
浮点型 0.0
空白字符串和字符串0
没有成员的数组
NULL
2. 整数型(int)

存储整数

<?php
var_dump(1);
?>
// 结果:int(1)
3. 浮点型(float)

存储小数

<?php
var_dump(3.14);
?>
// 结果:float(3.14)
4. 字符串(string)

可以使用单引号、双引号、定界符定义。
在单引号定义中引入单引号需要转义(’),单双引号中引入特殊字符需要转义,如(\或者美元符号);
单引号定义中,$原样输出,双引号中为变量的开始,需要将变量用{}括起来。

<?php
$name = 'zhangsan';
$str01 = "hello,{$name}";
var_dump($str01);
echo "<hr />";
$str02 = " \\ \$";
var_dump($str02);
?>

运行结果:

在这里插入图片描述

定界符:

<<<起个名字(一般跟大写字母)
内容
以名字加分号结束;

定界符开始和结束后面不能有任何字符包括空白和注释!!

<?php
$str =<<<TEST
This is a string!$\*
TEST;
var_dump($str);
?>

运行结果:

在这里插入图片描述
也可以写html代码:

<?php
$str =<<<TEST
<h1 style="color:white;background-color:black">This is a string!</h1>
TEST;
echo $str;
?>

运行结果:

在这里插入图片描述

3.7 常量

define()

常量是一个简单的标识符,惯例都是大写字母,定义的常量不能改变或取消定义,作用于全局,只包含bool、int、float、string类型的数据。

<?php
define("NAME","HAHA");
echo NAME;
?>

运行结果:HAHA

预定义常量

__FUNCTION__  // 当前函数名
__CLASS__;    // 当前类名
__METHOD__;   // 当前对象的方法名
<?php
define("NAME","HAHA");
echo NAME;
echo "<br \>";
echo __FILE__;   // 当前文件名
echo "<br \>";
echo __LINE__;   // 当前代码行数
echo "<br \>";
echo PHP_OS;     // UNIX或WINNT
echo "<br \>";
echo PHP_VERSION;// 当前PHP版本
echo "<br \>";
echo DIRECTORY_SEPARATOR; // 操作系统的目录分隔符(\或者/)
?>

运行结果:

在这里插入图片描述

3.8 运算符
  1. 算数运算符
-$a        # 取反
++$a  --$a # 自增和自减和java一样
  1. 比较运算符
    返回true或false
==    # 等于
===   # 全等(值和类型)
!=    # 不等
!==   # 不全等
<>    # 不等
<=>   # 组合比较
  1. 逻辑运算符
!       # 非
and &&  # 与
or ||   # 或
xor     # 异或
  1. 字符串运算符 .
    拼接字符串或变量
<?php
$name = "zhangsan";
$hello = "hello";
echo $hello.",".$name;
?>

运行结果:hello,zhangsan

  1. 赋值运算符
=   -=   +=   /=   *=    %=
# 这些都和java的一样
.=   # 字符串赋值运算符
# 例如:
$hello .= $name;
# 相当于:
$hello = $hello.$name;
  1. 其他运算符
  • 三元运算符
条件?条件为true:条件为false     

示例:

$a = 10>20?10:20;
echo $a;
$b = 10<20?10:20;
echo $b;

运行结果:20 10

  • 将字符串当作命令执行
`字符串`

示例:

`whoami`;
`ping baidu.com`;

运行结果:

在这里插入图片描述

  • 屏蔽提示警告(@)
<?php
echo @$hello;
?>

运行结果:屏蔽掉Notice提示

3.9 流程控制
3.9.1 if语句
<?php
$num = rand(0,100);
if($num >= 90){
	echo "A+"."|".$num;
} elseif($num >=80){	
	echo "A"."|".$num;
} elseif($num >=70){
	echo "B"."|".$num;
} elseif($num >=60){
	echo "C"."|".$num;
} else{
	echo "D"."|".$num;
}
?>

运行结果:

在这里插入图片描述

3.9.2 switch语句
<?php
$day = rand(1,10);
switch($day){
	case 1:
		echo "Monday"."|".$day;
		break;
	case 2:
		echo "Tuesday"."|".$day;
		break;
	case 3:
		echo "Wednesday"."|".$day;
		break;
	case 4:
		echo "Thursday"."|".$day;
		break;
	case 5:
		echo "Friday"."|".$day;
		break;
	case 6:
		echo "Saturday"."|".$day;
		break;
	case 7:
		echo "Sunday"."|".$day;
		break;	
	default:
		echo "error"."|".$day;	
}
?>
3.9.3 循环执行
while(判断条件){
	满足条件执行的语句;
}

do{
	执行语句
}while(判断条件)

区别:while先判断再执行,do…while先执行再判断。

for循环:打印9*9乘法表

for($i = 1;$i <= 9;$i++){
	for($j = 1;$j <= $i;$j++){
		echo "{$i}*{$j}=".$i*$j." ";
	}
	echo "<br />";
}
3.9.4 特殊控制
break      # 跳出循环
break 2    # 跳出两层循环
continue   # 跳出本次循环

# 结束当前程序,括号里可以写字符串,结束时会输出它
die()
exit()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值