当前位置:首页 > PHP教程 > php应用 > 列表

PHP编程基本语法快速入门手册

发布:smiling 来源: PHP粉丝网  添加日期:2021-07-04 13:02:02 浏览: 评论:0 

这篇文章主要介绍了PHP编程基本语法快速入门的一些知识,包括PHP的数组与循环语句等基础知识点,需要的朋友可以参考下。

php脚本的后面名为.php,代码放置在下面的括号里面:

  1. <?php 
  2. ....... 
  3. ?> 

echo可以打印信息,类似于printf。

  1. <?php 
  2. echo "hallo world"
  3. ?> 

每条语句后面用分号结尾;。

php支持三种注释方式:

  1. <?php 
  2. // 第一种 
  3.  
  4. # 第二种 
  5.  
  6. /* 
  7. 这是 
  8. 多行 
  9. 注释 
  10. */ 
  11. ?> 

在php中,函数、类、和关键词的大小写都是同一个东西:

  1. <!DOCTYPE html> 
  2. <html> 
  3. <body> 
  4.  
  5. <?php 
  6. ECHO "Hello World!<br>"
  7. echo "Hello World!<br>"
  8. EcHo "Hello World!<br>"
  9. ?> 
  10.  
  11. </body> 
  12. </html> 

不过所有变量都对大小写敏感,需要区分大小写。

  1. <?php 
  2. $color="red"
  3. $Color="black"
  4. echo "my car is " . $color . "<br>"
  5. echo "my car is " . $Color . "<br>"
  6. ?> 

上面的例子同时指出了变量定义以及字符串拼接的语法。

变量命名规则:

PHP 变量规则:

变量以 $ 符号开头,其后是变量的名称

变量名称必须以字母或下划线开头

变量名称不能以数字开头

变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _)

变量名称对大小写敏感($y 与 $Y 是两个不同的变量)

变量会在第一次赋值时被创建。无需声明变量的类型。

变量会有三种不同的作用域:

PHP 有三种不同的变量作用域:

local(局部)

global(全局)

static(静态)

函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。

函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。

下面的例子测试了带有局部和全局作用域的变量:

  1. <?php 
  2. $x=5; // 全局作用域 
  3.  
  4. function myTest() { 
  5.  $y=10; // 局部作用域 
  6.  echo "<p>测试函数内部的变量:</p>"
  7.  echo "变量 x 是:$x"
  8.  echo "<br>"
  9.  echo "变量 y 是:$y"
  10. }  
  11.  
  12. myTest(); 
  13.  
  14. echo "<p>测试函数之外的变量:</p>"
  15. echo "变量 x 是:$x"
  16. echo "<br>"
  17. echo "变量 y 是:$y"
  18. ?> 

运行结果:

测试函数内部的变量:

变量 x 是:

变量 y 是:10

测试函数之外的变量:

变量 x 是:5

变量 y 是:

比较奇怪的就是为什么全局变量不能在局部函数内访问。

其实可以访问,不过需要global关键字的帮助:

global 关键词用于访问函数内的全局变量。

要做到这一点,请在(函数内部)变量前面使用 global 关键词:

  1. <?php 
  2. $x=5; 
  3. $y=10; 
  4.  
  5. function myTest() { 
  6.  global $x,$y
  7.  $y=$x+$y
  8.  
  9. myTest(); 
  10. echo $y// 输出 15 
  11. ?> 

PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量。下标存有变量名。这个数组在函数内也可以访问,并能够用于直接更新全局变量。

  1. <?php 
  2. $x=5; 
  3. $y=10; 
  4.  
  5. function myTest() { 
  6.  $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; 
  7. }  
  8.  
  9. myTest(); 
  10. echo $y// 输出 15 
  11. ?> 

通常,当函数完成执行后,会删除所有变量。不过,有时我需要不删除某个局部变量。实现这一点需要static:

  1. <?php 
  2.  
  3. function myTest() { 
  4.  static $x=0; 
  5.  echo $x
  6.  $x++; 
  7.  
  8. myTest(); 
  9. myTest(); 
  10. myTest(); 
  11.  
  12. ?> 

php中echo和print都能使用,两者的唯一区别是print返回1,echo没有返回值。

strlen函数可以返回字符串的长度。

strpos函数用来确定另外一个字符串的位置:

  1. <?php 
  2. echo strpos("Hello world!","world"); 
  3. ?> 

使用define函数来定义常量:

  1. <?php 
  2. define("GREETING""Welcome to W3School.com.cn!"); 
  3. echo GREETING; 
  4. ?> 

define函数还有第三个参数,用来指定是否大小写敏感。

php的if-else语句和其他语言大同小异,举个例子:

  1. <?php 
  2. $t=date("H"); 
  3.  
  4. if ($t<"10") { 
  5.  echo "Have a good morning!"
  6. elseif ($t<"20") { 
  7.  echo "Have a good day!"
  8. else { 
  9.  echo "Have a good night!"
  10. ?> 

switch-case语句:

  1. <?php 
  2. switch ($x
  3. case 1: 
  4.  echo "Number 1"
  5.  break
  6. case 2: 
  7.  echo "Number 2"
  8.  break
  9. case 3: 
  10.  echo "Number 3"
  11.  break
  12. default
  13.  echo "No number between 1 and 3"
  14. ?> 

while、for语句和其他语言无差别,看看foreach吧:

  1. <?php  
  2. $colors = array("red","green","blue","yellow");  
  3.  
  4. foreach ($colors as $value) { 
  5.  echo "$value <br>"
  6. ?> 

php的真正力量来自于它的函数,它有1000个内置函数。

用户定义的函数声明以关单 "function" 开头:

  1. function functionName() { 
  2.   被执行的代码; 

举个例子:

  1. <?php 
  2. function writeMsg() { 
  3.  echo "Hello world!"
  4.  
  5. writeMsg(); // 调用函数 
  6. ?> 
  7.  
  8. // 含参数 
  9. <?php 
  10. function familyName($fname,$year) { 
  11.  echo "$fname Zhang. Born in $year <br>"
  12.  
  13. familyName("Li","1975"); 
  14. familyName("Hong","1978"); 
  15. familyName("Tao","1983"); 
  16. ?> 
  17.  
  18. // 默认参数 
  19. <?php 
  20. function setHeight($minheight=50) { 
  21.  echo "The height is : $minheight <br>"
  22.  
  23. setHeight(350); 
  24. setHeight(); // 将使用默认值 50 
  25. setHeight(135); 
  26. setHeight(80); 
  27. ?> 
  28.  
  29. // 返回值 
  30. <?php 
  31. function sum($x,$y) { 
  32.  $z=$x+$y
  33.  return $z
  34.  
  35. echo "5 + 10 = " . sum(5,10) . "<br>"
  36. echo "7 + 13 = " . sum(7,13) . "<br>"
  37. echo "2 + 4 = " . sum(2,4); 
  38. ?> 

在 PHP 中,有三种数组类型:

索引数组 - 带有数字索引的数组

关联数组 - 带有指定键的数组

多维数组 - 包含一个或多个数组的数组

索引数组:

  1. $cars=array("Volvo","BMW","SAAB"); 
  2. <?php 
  3. $cars=array("Volvo","BMW","SAAB"); 
  4. echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . "."
  5. ?> 
  6.  
  7. // count 
  8. <?php 
  9. $cars=array("Volvo","BMW","SAAB"); 
  10. echo count($cars); 
  11. ?> 
  12.  
  13. // 变量索引数组 
  14. <?php 
  15. $cars=array("Volvo","BMW","SAAB"); 
  16. $arrlength=count($cars); 
  17.  
  18. for($x=0;$x<$arrlength;$x++) { 
  19.  echo $cars[$x]; 
  20.  echo "<br>"
  21. ?> 

关联数组:

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

  1. $age['Peter']="35"
  2. $age['Ben']="37"
  3. $age['Joe']="43"
  4.  
  5. <?php 
  6. $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); 
  7. echo "Peter is " . $age['Peter'] . " years old."
  8. ?> 
  9.  
  10. // 遍历 
  11. <?php 
  12. $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); 
  13.  
  14. foreach($age as $x=>$x_value) { 
  15.  echo "Key=" . $x . ", Value=" . $x_value
  16.  echo "<br>"
  17. ?> 

数组排序方法有下面这些:

sort() - 以升序对数组排序

rsort() - 以降序对数组排序

asort() - 根据值,以升序对关联数组进行排序

ksort() - 根据键,以升序对关联数组进行排序

arsort() - 根据值,以降序对关联数组进行排序

krsort() - 根据键,以降序对关联数组进行排序

比较难理解的是键值对排序。

  1. <?php 
  2. $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); 
  3. asort($age); 
  4. ?> 
  5.  
  6. <?php 
  7. $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); 
  8. ksort($age); 
  9. ?> 

超全局变量,也就是预定义的全局变量,在哪里都能用,有特殊含义:

$GLOBALS:引用全局作用域中可用的全部变量

$_SERVER:保存关于报头、路径和脚本位置的信息。

$_REQUEST:用于收集 HTML 表单提交的数据。

$_POST:用于收集提交 method="post" 的 HTML 表单后的表单数据。也常用于传递变量。

$_GET:$_GET 也可用于收集提交 HTML 表单 (method="get") 之后的表单数据。

$_FILES

$_ENV

$_COOKIE

$_SESSION

其他内容可以在表单处理中找到。

Tags: PHP基本语法

分享到: