您的位置:首页 > 编程语言 > PHP开发

PHP的基本语言结构

2016-01-29 17:14 465 查看


一、 安装和配置PHP

· 需要关注的几个文件 httpd.conf hph.ini

· 使用 phpinfo()可以查看本机的PHP基本配置信息,具体方法如下:

将 <?php phpinfo(); ?> 保存为php文件,并放到 D:\Program Files (x86)\xampp\htdocs 路径底下。

· 将PHP从HTML中分离 可以使用的方法:

<? . . . ?>

<?php . . . ?>

<script language="php"> . . . </script>

<% . . . %>

· PHP注释风格

/* */ C,C 风格多行注释

// C 风格单行注释

# Unix风格单行注释

· 如何处理简单的PHP错误

1) 要把PHP.ini 里的display_errors = On 才可以显示错误位置

2) 习惯使用echo 或者 print 打印

3) 学会使用注释来屏蔽符号来调试

//……….

/*………… */

#..............

二、PHP的组成部分

1、超全局变量

· $_SERVER超级全局变量包含由web服务器创建的信息,它提供了服务器和客户配置及当前请求环境的有关信息。

· $_GET超级全局变量包含使用GET方法传递的参数的有关信息。

· $_POST超级全局变量包含用POST方法传递的参数的有关信息。

· $_COOKIE超级全局变量存储了通过HTTP cookie传递到脚本的信息。这些cookie一般是由以前执行的PHP脚本通过PHP函数setcookie ( ) 设置的。

· $_FILES超级全局变量包含通过POST方法向服务器上传的数据的有关信息。这个超级全局变量是一个二维数组,包含5个元素。第一个下标标示表单的文件上传元素名;第二个下标是五个预定义下标之一。

· $_ENV超级全局变量提供PHP解析所在服务器环境的有关信息。

· $_REQUEST超级全局变量是一个全能选手,它记录了通过各种方法传递给脚本的变量,特别是GET ,POST 和 COOKIE 。 建议少用这个超级变量,因为它不够安全。

· $_SESSION 超级全局变量包含与所有会话有关的信息。

· $GLOBALS 超级全局变量数组可以认为是超级全局变量的超集,包含全局作用域内的所有变量。

2、操作符和表达式

· $x=3;

$y=$x++ + 3; è $y 首先变为 6(3+3),然后$x 增加1

· $x=3;

$y=++$x + 3; è $x 先增加1,$y 再变为 7(4+3)

· === è等同: 左边等于右边并且他们的类型相同

· settype() : 改变一个已有变量的数据类型,它与使用强制类型转换改变变量类型的区别是,强制类型转换会生成一个变量的拷贝,而保持原变量不动

$test = 3.14;

$a = settype($test, ‘integer’); è 此时,$a和 $test 的值都变为3

$a = (integer)$test; è 此时,$a的值变为3, $test 的值还是3.14

· . è连接操作符,可将任何数据类型当成字符串对待,而且结果也是字符串类型,当想把某种类型的表达式结果和一个字符串组合到一起的时候用它。

[b]3、常量的定义


define(“Age”, 26); è常量的定义必须用到define,此处定义的是数字

define(“NAME”, “hen”); è常量的定义必须用到define,此处定义的是字符串

define(“Age”, 26, true); è第三个参数为true,表示引用常量时不区分大小写,即

echo age; 与 echo AGE; 是一样的。

三、PHP的流程控制功能

1、函数的定义

function 函数名(参数)

{

函数体 è 如果想引用该函数的返回值,则在return 语句中要使用&符号

}

· 函数名不区分大小写

· global(全局变量): 一个自定义函数中的变量是局部的,函数外不生效 ,如果想在函数之外或者别的函数中也可以访问该变量,则应该使用global,具体做法是:在函数体外进行变量声明和赋值,当函数体内要用该变量时,要用global进行一次声明(不是赋值)。

为了防止全局变量的混乱可以使用 unset($var)删除一个变量

$num=2;

function test($str)

{

global$num; =è再次声明,担不是赋值

$num++;

echo"<h1>".$num. " ".$str."</h1>"; è连接操作符

}

· static: 作用域仍然是局部的,不过会记住变量之前的值。

2、变量的引用

不同的名字访问同一个变量内容,相当于传址调用

· <?php

function add(&$num) è$ 前面没有 &

{ $num+=5; }

$orignum=10;

add($orignum); è虽然参数是引用的方式,但是在这里 $ 前面并没有 &

echo $orignum; è输出15

?>

· <?php

function &test(){

static $b=0;//申明一个静态变量

$b=$b+1;

echo $b;

return $b; }

$a=test();//这条语句会输出 $b的值 为1

$a=5; $a=test();//这条语句会输出 $b的值 为2

$a=&test();//这条语句会输出 $b的值 为3

$a=5; $a=test();//这条语句会输出 $b的值 为6[h1]

?>

3、数组

1. 创建数组 array & 数组操作符 []

array: 创建一个关联数组,并且想直接给数组中元素赋值时用它

数组操作符[]:创建一个新的数组,且开始时只有一个元素,或者给一个已存在的数组添加一个元素的时

候用它

2. 用方括号的语法来修改数组 ,格式: $arr[] = value

$arr = array("a" => "视频", "b"=>"教程", "c" => "六");

$arr['a'] = "PHP100";

3. 与数组相关的函数

使用 count 函数统计数组条数: count ( $arr );

使用 is_array函数判断数组 : is_array( $arr );

遍历数组:

foreach ( $数组名 as $c){

while ( list($k, $v) = each( $c)){

echo “$k ….. $v <br/>”;

}

echo “<hr/>”;

}

4、类

[h1]

过$a=&test()方式调用函数呢,他的作用是 将return$b中的 $b变量的内存地址与$a变量的内存地址 指向了同一个地方 即产生了相当于这样的效果($a=&b;)所以改变$a的值 也同时改变了$b的值 所以在执行了$a=&test(); $a=5; 以后,$b的值变为了5

[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: