Home  >  Article  >  php教程  >  php基础知识

php基础知识

WBOY
WBOYOriginal
2016-06-06 19:54:331140browse

1. php运行过程时序图 目录 htdocs 目录 下一个文件夹,该文件夹中包含各种 web 资源 (html/php/css/js/ 图片 / 视频 ...) apache 和 php 在网络中的位置 使用 uml 图,描述了请求 php 文件的整个流程 . 2 php 的基本语法介绍 2.1php 可以和 html 代码混合

1. php运行过程时序图

目录 htdocs 目录下一个文件夹,该文件夹中包含各种web资源(html/php/css/js/图片/视频...)

    apachephp在网络中的位置

 

php基础知识

 使用uml图,描述了请求php文件的整个流程

.

php基础知识

2  php的基本语法介绍

2.1     php 可以和html代码混合但是一定要使用

      //php代码

?>

可以在php中嵌入html代码

  

echo"hello,world";

//写一部分html代码

?>

hello

?>

2.     还可以使用如下方法嵌入 php 代码(脚本)

     

      echo "
测试一下吧!";

?这个推荐

3.     如果只是为了显示一个变量的值

=变量?>

举例

=$i?>

4.     php代码注释的方法有

4.1       注释多行

/*

  

*/

/*echo"
aaaa";

      echo "
aaaa";

      echo "
aaaa";

      echo "
aaaa";

      echo "
aaaa"; */

4.2       单行注释

//

 php的基本语法加强

Parse : 解析

error 错误

syntax : 语法

   php 可以和html 混合使用

   php 的变量的定义使用

//php中,定义一个变量要以$符号打头

$a=890;//我定义了一个变量,该变量名叫$a , 然后给该变量赋了一个值890

   php 的变量的数据类型,是变化的,php变量的数据类型是由运行时的上下文决定

   php区分大小写

$i =89;

$I=90;

$abc=90;

$Abc=900;

   php 的变量的名称,应当以字母或者下划线开头,不要用数字开头,也不要用特殊字符开头.

$3abc=89;

     php 数据类型有哪些?

有三大类

1.     基本数据类型

1.1   整型

1.2   小数型(浮动数)包含单精度和双精度

1.3   布尔类型 (表示真,和)

1.4   字符串

2.     复合数据类型

2.1   数组(array

2.2   对象 (object)

3.     特殊数据类型

3.1   null

3.2   资源类型(resource)

整型细节说明

基本数据类型的入门案例:

整型

      整数类型可以表示一个整数,比如:

      $ts=1;  $ts=-12;

布尔类型

      布尔型可以表示真或者假,比如:

      $ts=true;  $ts=false;

小数类型

      小数类型可以表示一个小数(float,double)

      $ts=1.12 $ts=3.1415926

字符串类型

      字符串类型可以表示一个字符串

      $ts=“我是一个好人 hello”

基本概念:

何为定义一个变量

      $a=90; //相当于我们定义了一个变量 $a,并赋值90

?>

什么叫给变量赋值

      $a=78;

      $a=8;  //表示用新的值替代 78

      $a=”hello”; //表示$a 的类型变化.

?>

     整型的细节讨论

php中一个整型数据可以用十进制,也可以用八进制和十六进制

比如

$a =0123; // 八进制数(是以0开头)

$a =0x1A; // 十六进制数

0123 =3*80次方 + 2*81次方+ 1*8的二次方

=3*1+2*8+1*64=83

0x1A=A*160次方 +1*16的一次方=10+16=26

$a=123=3*100次方+2*101此方+1*10的二次方=3+20+100=123

php的整数都是有符号数.

php基础知识

通过该图,我们可以看出,php的整数的二进制的最高位表示符号

通过  PHP_INT_SIZE

可以显示我们自己的机器,一个整数用几个字节表示

echoPHP_INT_SIZE;

通过PHP_INT_MAX 可以显示int 最大的数有多少

echoPHP_INT_MAX;

请问? 为什么  PHP_INT_MAX  2147483647

我们一起推一下

请问? php int 型,负数最大表示多少?

负数和正数一样大

231次方减一

如果一个整数的范围超过了最大范围,则自动变成float

布尔细节浮点数细节字符串细节算术运算符①\

学生的问题?

$a=2; 问在内存中 2是怎样存在的

00000000 00000000 00000000 00000010 -> 0*20次方+1*2的一次方+..0=0+2=2

$a=-2 问在内存中形式

      布尔类型

简单的说布尔类型就两个值 true, 一个false;

举例:

//布尔类型

$a=true;

$b=false;

布尔 FALSE 自身

整型 0 ()

浮点型 0.0 ()

字符串, 以及字符串"0"

不包括任何元素的数组
不包括任何成员变量的对象(仅PHP 4.0 适用)

特殊类型NULL (包括尚未设定的变量)

$conn=mysql_connect(“localhost”,”root”,”root”);

if($conn){

       echo ‘ok’;

}else{

       echo ‘没有ok’;

}

浮点数的细节

1.浮点数(也叫双精度数或实数)

2.浮点数的字长和平台相关,通常最大值是 1.8e308 并具有 14 位十进制数字的精度 (这个限制很重要)

?精度要从左边开始的第一个非0的数字计算.

      字符串的细节

$a=”hello”;

请问 $a 占用了多个是字节 5个字节

一个字符串类型可以表示多大的串?

理论上,我们对字符串大小没有限制,即只有不超过内存就可.

我们定义字符串的时候,可以用单引号,也可以使用双引号

区别如下:

$i=90;

       $user1="hello$i";

       $user2='hello$i';

       echo '
user1='.$user1;

       echo '
user2='.$user2;

从上面案例我们看出, 当一个变量包含在 “”号中时,会输出它的值,而包含在’’ 中是输出其字符本身.

案例2

       如果字符串是包围在单引号(‘), 除了来处理

\” 时,会输出 \” 外,其它规则都一样

      php数据类型的自动转换

      php的表达式

所谓表达式,就是任何有值的东西.

$a=90+89;

      php的算术运算符

+ -* / %

算术运算符②比较运算符逻辑运算符

php的算术运算符

+ -* / %

$a=90;

    $b=7;

    if($a%$b==0){

           echo '能整除';

    }else{

           echo '不能整除!';

    }

++ 快速入门:

$a=90;

      $a++; //等价于$a=$a+1;

      echo $a;

      $b=89;

      $b--; //等价于$b=$b-1;

      echo '
'.$b;

细节我们的++分为前++ ++   , --也分为--  - -

$a=56;

$b=$a++;

echo$b;

echo$a;

对上面代码的分析如下:

$a=56;

      //$b=$a++; //等价于  $b=$a;$a=$a+1;   

      $b=++$a; //等价于$a=$a+1; $b=$a;

     

      echo $b."||"; //-->$b 57

      echo $a; //-->$a 57

php基础知识

左加

+=

左减

-=

左乘

*=

左除

/=

左取模

%=

$a=90;

$a-=90;//$a=$a-90;

echo$a;

     比较运算符

 

php基础知识

案例:

$a=2;

$b=2.0

//只有值相等就为true

if($a==$b){

      echo ‘$a==$b’;

}

//全等,要求$a $b 值和类型要相等

if($a== =$b){

}

!=  != = 说明

//只有值不相等,则为true

      if($a!=$b){

             echo '$a!=$b';

      }

      //只要值不相等,或者类型不相等,则为true

      if($a!==$b){

             echo '$a!==$b';

      }

 

请编写一个程序,该程序可以接收两个数(可以是整数,也可是小

),并判断两个数是大于?小于?还是等于?

对应的案例:

$a=123;

      $b=90;

     

      if($a>$b){

             echo '$a>$b';

      }

      if($a

      {

             echo '$a

      }

      if($a==$b){

             echo '$a==$b';

      }

?>

     逻辑运算符

php基础知识

要求大家掌握的知识点有:

搞清每个逻辑运算的规则

案例

$a=10;$b=7;

  if($a++>8 || $b++>7){

      echo 'ok!';

  }

  echo 'a='.$a.'b='.$b;

//把结果填写

$a=10;$b=7;

  if($a++>10 && $b++>7){

      echo 'ok!';

  }

  echo 'a='.$a.'b='.$b;  

$a=10;$b=7;

  if($a++>18 && $b++>7){

      echo 'ok!';

  }

  echo 'a='.$a.'b='.$b;

?面试题:  and  &&都表示逻辑与,他们的区别在什么地方

主要体现在优先级上面

and 的优先级

and

or

配合案例:

$e =false || true;

$f =false or true;

var_dump($e,$f);

$e true

$f false;.....

 

php基本语法-三元运算符

基本语法

表达式1 ? 表达式2 : 表达式3

规则:

如果表达式1 的运算结果是 true, 则取表达式2 的值,否则,取表达式3的值.

举例

       $a=90;

       $b=180;

       $c=$a>$b?(12-10):"hello,world";

       echo 'c=='.$c;

?>

      php 的字符串运算符

案例:

$a="hello,world";

       $b=123;

       $c=$b.$a; //$a 具体表示内容和 $b 表示内容拼接

       echo $c;

从上面案例我们看出,当两个变量(基本数据类型) . 连接的时候,就表示把他们的内容拼接

      类型运算符(了解)

基本语法是: instanceof 用于确定一个 PHP 变量是否属于某一类 class 的实例,通常在面向对象开发中可能用的.

class Dog{}

       class Cat{}

       //创建一个对象

       $cat1=new Cat;

       //var_dump($cat1 instanceofDog);

       //在实际开发中,我们可能需要去判断某个变量是否是某个类型

       if($cat1 instanceof Cat){

             echo '$cat1 是一只猫';

       }

      运算符优先级的说明:

//****运算优先级*****

?如果将来你们有一个表达式很复杂,建议使用() 来指定其运算优先级

       $a=3;

       $b=++$a*3;

       echo $b;

php基础知识

php程序的三大流程控制

   顺序控制(从上到下,从左到右)

$a=7;

               echo “a=”.a;

               echo “hello!”;
             $a++;

               echo “a=”.a;

               echo “O(_)O”;

               $a++;

               echo “a=”+a;  

所谓顺序控制流程,就是不加控制的流程,默认情况,会按照,顺序来执行你编写的代码

   分支控制

一个简单的定义: 有选择的来执行我们的代码.

分为 1. 单分支 2. 双分支 3 多分支

1.     单分支的基本语法结构

if(条件表达式){

      语句;

      //...

  //....

}

这里我们,这里的条件表达式不管多复杂,最总运算的结果就是 true 或者 false;

快速入门:

编写一个程序,可以输入人的年龄,如果该同志

的年龄大于18,则输出你年龄大于18,要对

自己的行为负责!”

$age=7;

      if($age>18){

             echo '你的年龄大于18';

      }

2.     双分支

基本语法结构

if(条件表达式){

  //n多语句;

}else{

      //n多语句;

}

编写一个程序,可以输入人的年龄,如果该同志

               的年龄大于18,则输出你年龄大于18,要对

               自己的行为负责!”。否则 ,输出你的年龄不大

               这次放过你了.”

代码:

$age=4;

      if($age>18){

             echo '你的年龄大于18';

      }else{

             echo '你的年龄小于18';

      }

      echo '
程序结束!';

php基础知识

3.     多重分支

基本语法结构是

if(条件表达式){

//n多语句

}else if(条件表达式){

//n 多语句

}else if(条件表示式){

//.

}//这里可能还有更多的else if

else{

}

?对上面的结构请注意:

(1)  else if 可以有一个,也可以有多个

(2)  else 可以没有

快速入门案例:

编写一个程序,可以输入人的年龄,如果该同志

               的年龄大于18,则输出你年龄大于18,要对

               自己的行为负责,送入监狱。如果该同志的年

               龄大于10岁并且小于等于18,则输出你的年龄

               也不小了,把你送少管所.”。其它情况,则输出

               “小孩子,下次注意

代码如下:

$age=34;1

if($age>182){

  echo'你要被送入监狱';3

}elseif($age>10 4&& $age5){

  echo'送入少管所';6

}else{

  echo'下次注意';7

}

echo"over";8

流程分析图:

php基础知识

 switch分支语句

基本语法结构

switch(表达式){

case 常量1:

//n多语句;

break;

case 常量2:

//n多语句

break;

defual:

  //n多语句;

      break;

}

?请注意:

1.     case 语句有一到多

2.     defaul 语句可以没有(根据自己代码的业务逻辑)

3.     通常,在case 语句后,要带break ,表示退出switch语句

4.     常量的类型 (int, float, 字符串, 布尔型)

快速入门案例:

请编写一个程序,该程序

可以接收一个字符,比如

:a,b,c,d,e,f,g  

a表示星期一,b表示星期

…  根据用户的输入显

示相依的信息.要求使用

switch 语句完成

$myChar="b";

      switch($myChar){

       

             case "a":

                   echo '今天星期一,猴子穿新衣';

                   break;

             case "b":

                   echo '今天星期二,猴子当小二';

                   break;

             case "c":

                   echo '今天星期三,猴子爬雪山';

                   break;

             default:

                   echo '没有匹配的日期';

     

      }

      echo 'okokook';

一个案例:

$i=11;

      switch ($i){

     

      case 10:

      echo '10';

     

      case 1.3:

      echo '11';

      break;

     

      default:

      echo 'hello';

      //break;

      case 11:

      echo '12';

      break;

     

      }

该案例得出一个结论:

//最终的结论是:

首先按照case顺序进行配置,如果一个都没有匹配到,则执行

      //default语句的内容,直到遇到break,则退出switch

42讲 循环控制①(for)

 

学生的问题: 老师,说一下if语句和switch的区别,及应用场景

回答:从我们学习if  switch 分支看,if对某个范围的判断,而switch是对一个点的判断, 所以我们可以这样去选择他们:

应用场景: 当我们的分支就是几个点的时候(比如判断坦克的方向),就应当使用swtich,如果你的分支是几个区域(范围)的判断,则考虑使用if

   循环控制流程

首先说 for 循环控制

基本语法结构

for(循环初值;循环的条件;步长){

     

      //n多语句;

}

为什么需要循环控制 ?

问题请输出9000000句,你好,北京

这样一问题:怎样让我们的某段代码,循环的执行

分析图

for($i=0;$i

             echo '
你好,北京';

      }

      echo "over";

php基础知识

内存图:

43讲 循环控制②(while dowhile) 打印金字塔案例

更新时间:201211201154来源:

   while循环

基本语法结构是

while(循环条件){

     

//循环体 ,语句

}

案例: 使用while来打印 10你好北京

代码:

//*****while循环*****

      $i=0;//$i循环控制变量

      while($i

     

             echo '
你好北京'.$i;

             //这里我们对循环控制变量,自增.

             $i++;

      }

流程分析图:

php基础知识

 do..while循环控制

基本语法结构

do{

      //循环体

}while(循环条件);

快速入门: 循环的显示 10句,你好北京”;

$i=0;1//循环控制变量

do{

  echo'
dowhile
你好北京'.$i;2

  //对循环控制变量修改

  $i++;3//这里有程序员自己控制步长.

}while($i4);

执行的流程图:

 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn