25分钟了解php?php基础

161 阅读3分钟

学习目标:持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第12天,点击查看活动详情

🏆今日学习目标: 🍀学习php基础 ✅创作者:贤鱼 ⏰预计时间:35分钟

请添加图片描述 @TOC

如何运行🍀

这里用vscode举例

调出cmd 在终端输入php 名字+tab(tab自动补全名字)

记得要进入目标目录下 在这里插入图片描述

语法🍀

在php文件中,既可以包含HTML代码,也可以包含php代码 而php代码必须用 包裹起来

举个例子

<html>
	<head>
		<title>Example</title>
	</head>
	<body>
		<?php
			echo "Hi, I'm a PHP script!";//可以看到php语句在HTML中
		?>
	</body>
</html>

注释

// 注释当前一行 /包裹内容全部注释/

输入输出语句

输出

echo "hellow word\n"; 输出一个或者多个字符串 var_dump("hello word"); 打印相关变量的信息 printf("%s","hellow word\n"); 和c语言一样,格式化输出 var_export 输出或者返回一个变量的字符串表示


<?php
    echo "Hello World\n";
    var_dump("Hello World");
    printf("%s","hello word\n");
?>

在这里插入图片描述

输入

fgets(STDIN): 获取输入的当前行 fread(STDIN,n): 获取前n个字符 fgetc(STDIN):获取一个字符 sscanf(string str,stringstr ,string format [, mixed &$... ]):将 str 按照 fromat 进行格式化解析

<?php
    $str = fgets(STDIN);//获取当前行
    sscanf($str,"%s %d",$s,$d);
    echo $s,$d;
?>

在这里插入图片描述

变量

$a=1;
$b;
%c="hellow word";

$+变量名

如果为赋值直接使用,变量将为空

变量作用域

分为==全局变量==,==局部变量==和==static关键字==

全局变量:定义在函数外都可以使用的变量,在整个文件中都可以用,作用域是从定义处一直到文件结尾

局部变量:函数内定义,只能在函数内部使用,作用域就是函数定义范围内。函数内使用全局变量需要==global==关键字或者==$globals[变量名]==数组

static关键字:将变量生存周期变为全局,不会影响作用域

超级全局变量

$GLOBALS//一个包含了全部变量的全局数组。变量的名字就是数组的键。
$_SERVER//服务器和执行环境信息,是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组
$_GET:HTTP GET //变量,通过URL参数传递给当前脚本的变量的数组。 自动url解码
$_POST:HTTP POST// 变量,HTTP POST请求的。Content-Type 是 application/x-www-formurlencoded 或 multipart/form-data 时,会将变量以关联数组形式传入当前脚本
$_FILES:HTTP //文件上传变量,通过 HTTP POST方式上传到当前脚本的项目的数组
$_REQUEST:HTTP //Request 变量,默认情况下包含了 $_GET(自动url解码),$_POST 和$_COOKIE 的数组。
$_SESSION//Session 变量,当前脚本可用 SESSION 变量的数组
$_ENV//环境变量,通过环境方式传递给当前脚本的变量的数组。
$_COOKIE//HTTP Cookies,通过 HTTP Cookies方式传递给当前脚本的变量的数组
$php_errormsg//前一个错误信息
$HTTP_RAW_POST_DATA//原生POST数据
$http_response_header//HTTP 响应头,使用HTTP 包装器时,$http_response_header 将会被HTTP 响应头信息填充。
$argc//传递给脚本的参数数目,传递给脚本的参数数目
$argv:传递给脚本的参数数组,传递给脚本的参数数组

数据类型

数字型

$int1=1234 //十进制正整数
$int2=-1234 //负整数
$int3=01234 //八进制整数
$int4=0x1234 //十六进制整数
$float1=666.66 //浮点数
$float2=6.6666e2 //表示6.6666乘以10的2次方,为指数形式的浮点数

字符串型

$c1 = 'c'
$c2 = "c"
$s1 = 'str'
$s2 = "str"

布尔型

只有true和false

$a = true;
$b = false;

数组型

定义

PHP中的数组实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。 ==key==的值必须是==整型或者字符串型==,==values==值可以是==任何类型==。 定义数组时==如果不加key键,key值默认从0开始==(下标从0)。

$array1 = [
	"foo" => "bar",
	"bar" => "foo",
];
$array2 = ['a','b']; #等价于 $array2 = [ 0 => "a", 1 => "b"];
$array3 = array(
	"foo" => "bar",
	"bar" => "foo",
);
$array4 = array("a","b"); #等价于 $array4 = array(0 =>'a', 1=>'b')

增加元素

改变赋值来增加元素

$arr['xxx']='yu';

删除元素

利用unser()函数

unset($arr['xianyu']);

查找元素

用key直接访问

var_dump($arr['aaa']);

修改元素

通过ket访问并且修改

$arr['aaa']='xianyu'

常量

定义

define ( string $name , mixed $value )
	name:必选参数,常量名称,即标志符。
	value:必选参数,常量的值。
define('SCHOOL','xianyu');
echo SCHOOL;

在这里插入图片描述

系统常量

名字作用
_LINE _文件中的当前行号。
_FILE _文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。
_DIR _文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。
_FUNCTION _函数名称(PHP 4.3.0 新加)。
_CLASS _类的名称(PHP 4.3.0 新加)。
_TRAIT _Trait 的名字(PHP 5.4.0 新加)。
_METHOD _类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。
_NAMESPACE _当前命名空间的名称(区分大小写)。此常量是在编译时定义的(PHP 5.3.0增)。

运算符

算数运算符

符号意义
+
-
*
/
%取余
++累加
--累减

字符串运算符

只有一个英文句号 ==.==

赋值运算符

符号意义
=右边的赋值给左边
+=左边的值加上右边的值
-=左边的值减去右边的值
*=左边的值乘右边的值
%=左边的值对右边的值取余数
.=左边字符串连接到右边

位运算

符号意义
&按位与
竖杠按位或
按位异或
>>按位右移
<<按位左移
~按位取反

逻辑运算符

符号意义
&&(and)逻辑与
两个竖杠逻辑或
xor逻辑异或
逻辑非

比较运算符

符号意义
<小于
大于
<=小于等于
>=大于等于
==等于(不包括类型)
===完全等于(类型也要相等)
!=不等于

其他运算符

符号意义
$定义变量
&变量地址
@屏蔽错误信息(扔到函数前头)
->应用对象方法或者属性
=>用于数组元素赋值)
?:三目运算符

流程控制语句

if-elseif-else

if ($a > $b) {
	echo "a is bigger than b";
} elseif ($a == $b) {
	echo "a is equal to b";
} else {
	echo "a is smaller than b";
}

switch

switch ($i) {
	case 0:
		echo "i equals 0";
		break;
	case 1:
		echo "i equals 1";
		break;
	case 2:
		echo "i equals 2";
break;
}

while

$i = 1;
while ($i <= 10) {
	echo $i++;
}

do-while

$i = 0;
do {
	echo $i;
} while ($i > 0);

for

or ($i = 1; $i <= 10; $i++) {
	echo $i;
}

foreach

$arr = array("one", "two", "three");
foreach ($arr as $key => $value) {
	echo "Key: $key; Value: $value<br />\n";
}
foreach ($arr as $value) {
	echo "Value: $value<br />\n";
}

函数

<?php
function add_some_str_a($string)
{
	$string .= 'and something extra.';
}
function add_some_str_b(&$string)
{
	$string .= 'and something extra.';
}
$str = 'This is a string, ';
add_some_str_a($str);
echo $str."\n";
add_some_str_b($str);
echo $str."\n";
?>

在这里插入图片描述

结束语🏆

后面会继续更新关于php的内容,可以订阅专栏关注一下奥

请添加图片描述