php基础教程
前言这是我总结的php基础内容,完全由我一字一句写出来的,绝非复制粘贴网上的教程
其中参杂了一些我的个人见解,如果有不严谨或者不正确的地方请指出,我会更正
以后,我会逐渐完善本篇教程
为什么要学习php?
根据w3techs官方显示,78.7%网站的服务器端编程语言使用PHP,其次是ASP.NET占比10.5%,第三是Java占比3.5%,Python则排名在第七占比1.4%。
虽然网上对php的唱衰不断,但是数据可以说明一切,php依旧是老大,如果因为别人的三言两语就放弃学某一门语言,那根本就是无聊之举
php编译器
推荐使用phpStudy 2018版
1.代码格式
纯文本查看 复制代码<?php中间是php代码?>
注意,php语句结尾要有 ; 号
例:echo "helloworld";
2.注释
纯文本查看 复制代码单行注释://此乃单行注释多行注释:/*此乃多行注释*/
3.输出
纯文本查看 复制代码1.echo "helloworld";//echo能输出多个字符串,但无返回值2.print "helloworld";//print只能输出一个字符串,如果输出成功,则返回1,即true;反之则返回0,即false
4.变量
变量格式为: $ + 变量名
例:$bob
变量名格式:
1.不能有空格
2.只能是字母,数字和下划线
3.特殊符号不可以
变量声明
纯文本查看 复制代码<?php$bob = 1;$hacker = "helloworld";$hello = true;?>
5.常量
纯文本查看 复制代码<?phpdefine("bob","hello",true);//常量用define来定义,格式为:define(常量名,常量值,是忽略大小写错误)//注意,是否忽略大小写错误,如果是true,则忽略大小写错误,如果是false,则不忽略大小写错误,默认是false?>
例子:
纯文本查看 复制代码<?phpdefine("bob","hello",true);echo bob;//正确写法,输出helloecho BOB;//错误写法,会报错define("abc","hi",false);echo abc;//正确写法,输出hiecho ABC;//正确写法,输出hi?>
6.函数,类,命名空间
函数:
纯文本查看 复制代码<?phpfunction bob($bob,$hello)//函数声明格式:function+函数名(参数){函数内容}{ echo $bob; echo $hello; $hacker =$bob + $hello; return $hacker;//如果有返回值,加上return}echo bob(1,2);//函数调用:函数名(参数)?>
结果:
纯文本查看 复制代码3
类:
纯文本查看 复制代码<?phpclass bob{ echo "hello";//类定义格式:class + 类名{要执行的代码}}?>
命名空间:
纯文本查看 复制代码<?phpnamespace bob{ echo "hello";//命名空间定义格式:namespace + 空间名{要执行的代码}}?>
7.变量的作用域
纯文本查看 复制代码<?php$bob = 1;//在函数之外声明的变量,关系到全局,叫全局变量echo $bob;function bob(){ global $bob;//全局变量不可以在函数中直接调用,要先用giobal引用 echo $bob; static $hakcer = 1; /*在函数之内声明的变量,关系到局部,叫局部变量,局部变量只能在函数内部使用 函数中的局部变量在函数执行后就会删除,如果需要保存,要用static */}?>
单引号和双引号的区别
双引号解释字符串中的变量和转义字符
纯文本查看 复制代码<?php$bob = "hackerbob";echo "hello $bob";?>
结果:
纯文本查看 复制代码hello hacekrbob
单引号不解释
纯文本查看 复制代码<?php$bob = "hakcerbob";echo 'hello $bob';?>
结果:
纯文本查看 复制代码hello $bob
9.字符串
输出时,字符串之间可以用 . 来拼接
纯文本查看 复制代码<?php$a = "hello";$b = "world";echo $a."bob".$b;?>
结果:
纯文本查看 复制代码hellobobworld
字符串相关函数(比较重要的):
纯文本查看 复制代码strlen()//获取字符串长度strpos(原字符串,要查找的字符串)//如果有则返回要查找的字符串在原字符串的第一个字母的下标,没有返回0,即falsechop(原字符串,要删除的字符串)//从右开始,删除原字符串中指定的字符串
10.数组
格式:变量 = array(数组内容)
1.数值数组:
纯文本查看 复制代码<?php$a = array("hello","hi,"bob");echo $a;//数值数组中的数据通过下标访问?>
结果:
纯文本查看 复制代码hello
2.关联数组:
纯文本查看 复制代码<?php$a = array("a" => "hello","b" => "hi");//关联数组其实就是给下标取了一个别名而已echo $a['a'];//访问时用别名访问?>
结果:
纯文本查看 复制代码hello
3.多维数组:
纯文本查看 复制代码//其实多维数组就是几个数组嵌套在一起,下面是一个三维数组$bob = array( array( array(1, 2), array("hello", "hi"), ), array( array("bob", "hacker"), array(1,2), ),);echo $bob//也是从最外边的数组访问到里面
结果:
纯文本查看 复制代码1
11.运算符
算术运算符:
纯文本查看 复制代码<?php$a = 1;$b = 2;$a + $b;// 加法运算 3$a - $b;//减法运算 -1$a * $b;//乘法运算 2$a / $b;//除法运算 0.5$a % $b;//取余 2-$a;//取反 -1$c = "hello";$d = "world";$c.$d;//合并字符串 helloworld?>
赋值运算符:
纯文本查看 复制代码<?php$a = 3;$b = 2;$a = $b;//$a = 2$a += $b;//$a = 5$a -= $b;//$a = 1$a *= $b;//$a = 6$a /= $b;//$a = 1.5$a %= $b;//$a = 1?>
递增/递减运算符:
纯文本查看 复制代码$b = 2;$a = ++$b;//$a = 3$a = $b++;//$a = 2$a = --$b;//$a = 1;$a = $b--;//$a = 2
比较运算符:
纯文本查看 复制代码$a = 1;$b = "1";$a == $b;// 比较数值,等于返回true,反之返回false$a === $b;//比较类型和数值,等于返回true,反之返回false$a != $b;//比较数值是否不等于,不等于返回true,反之返回false$a <> $b;//比较数值是否不等于,同上$a !== $b;//比较数值和类型是否不等于,不等于返回true,反之返回false$a < $b;//比较$a是否小于$b,小于返回true,反之返回false$a > $b;//比较$a是否大于$b,大于返回true,反之返回false$a <= $b;//比较$a是否小于等于$b,小于等于返回true,反之返回false$a >= $b;//比较$a是否大于等于$b,大于等于返回true,反之返回false
逻辑运算符:
纯文本查看 复制代码a and b;//a,b都为true,则返回true,相当于a && ba or b;//a,b至少有一个为true,则返回true,相当于a || ba xor b;//a,b仅有一个为true时,则返回true
12.判断
1.if语句
如果条件为真,则执行代码
纯文本查看 复制代码<?phpif(1 < 10){ echo "1<10"//if(条件){要执行的代码)} ?>
2.if....else....语句
如果条件为真,则执行if处的代码
其他情况,执行else处代码
纯文本查看 复制代码<?phpif(1 < 10){ echo "1 < 10";//if(条件){要执行的代码}}else{ echo "1 >= 10";//else{要执行的语句)}?>
3.if....elseif.....else......语句
如果if条件为真,则执行if处代码
如果elseif条件为真,则执行elseif处代码
其他情况,执行else处代码
注意:elseif可以放多个
纯文本查看 复制代码<?php$a = 5if($a < 10){ echo "a小于10";//if(条件){要执行的代码}}elseif($a > 10){ echo "a大于10";//elseif(条件){要执行的代码}}else{ echo "a等于10";//else{要执行的语句}}?>
4.switch语句
如果第一个case为真,则执行第一个case处代码,往后依此类推
所有case都不对,则执行default处代码
纯文本查看 复制代码<?php$a=10switch ($a){case 1: echo "1": break;case 2: echo "2"; break;case 3: echo "3"; break;default: echo "无法识别";}?>
结果:
纯文本查看 复制代码1
13.循环
1.while循环
判断条件是否为真,如果为真则执行代码,执行完毕后再判断条件是否为真
纯文本查看 复制代码<?phpwhile(1<10){ echo "1<10";//while(条件){要执行的代码)//运行后会不停输出1<10}?>
2.do....while....循环
先执行一次代码,再判断条件是否为真
纯文本查看 复制代码<?php$a = 0do{ ++$a}while($a < 10);?>
3.for循环
先执行初始化代码,再判断,如果为真,就执行代码,执行完后再执行增量代码,再判断
注意:初始化代码只执行了一次
纯文本查看 复制代码<?phpfor ($a=10; $i>4; $i--){ echo $a}?>
4.foreach循环
foreach是用来遍历数组的
纯文本查看 复制代码<?php$a = array("hello","hi")foreach($a as $b){ echo $b}?>
结果:
纯文本查看 复制代码hellohi
14.魔术常量
1.LINE
纯文本查看 复制代码<?phpecho __LINE__//__LINE__返回当前行数?>
结果:
纯文本查看 复制代码2
2.FILE
纯文本查看 复制代码<?phpecho __FILE__//__FILE__返回当前文件路径?>
结果:
纯文本查看 复制代码E:\bob\bob.php
3.DIR
纯文本查看 复制代码<?phpecho __DIR__//__DIR__返回当前文件所在的文件夹?>
结果:
纯文本查看 复制代码E:\bob
页:
[1]