写点什么

25 分钟了解 php?php 基础

作者:贤鱼很忙
  • 2022 年 10 月 10 日
    新疆
  • 本文字数:2318 字

    阅读完需:约 8 分钟

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



@TOC

如何运行🍀

这里用 vscode 举例


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


记得要进入目标目录下


语法🍀

在 php 文件中,既可以包含 HTML 代码,也可以包含 php 代码而 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 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;
复制代码


系统常量

运算符

算数运算符

字符串运算符

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

赋值运算符

位运算

逻辑运算符

比较运算符

其他运算符

流程控制语句

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";}
复制代码

函数

<?phpfunction 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 的内容,可以订阅专栏关注一下奥



发布于: 刚刚阅读数: 4
用户头像

贤鱼很忙

关注

为了未来奋斗中 2022.09.28 加入

主修网络安全和c++方面内容,时常提供题解和网络安全方面知识

评论

发布
暂无评论
25分钟了解php?php基础_php_贤鱼很忙_InfoQ写作社区