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

PHP基础知识

2015-09-22 09:21 603 查看
一,

PHP

脚本代码标记

PHP

的脚本是文件中一对特殊标记所包括的内容,如

ASP





<%....%>



,PHP

可看成是



<?...?>





然而为了适应

XML

标准以将

PHP

嵌入到

XML



XHTML

中,

PHP

不建议使用短格式的



<?...?>



,而建

议使用长格式标记



<?php...?>



此外

PHP

代码块还支持

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

的标记形式。

二,

PHP

指令分隔符

PHP

的每条语句需要由分号







隔开,

但对于

PHP

结束标记



?>



来说,因其自动隐含一个分号,



以不需要追加分号。

所以,一个

PHP

脚本的格式可如下:

<?php/*............ ............ ............ ............ *///

注意最后一行可以

没有分号

?>

三,

PHP

的注释

PHP

多行注释使用



/* ......... */



单行注释使用



#







//



四,

PHP

的输出

ASP

中使用



<%=...%>



快速输出单行,或使用



<%Response.Write("...")%>





PHP

中直接使用



echo()







print()



,比如:

<?phpecho "a";echo (b);echo ("c");echo d;?>

将输出为



abcd



,以上四种均能正常输出。

但这在

ASP

中,尤其是

echo

"a"

;和

echo

d;

均输出为字符串本身,是不可能的。这就需要了

解到

PHP

的变量定义。

五,

PHP

的变量



ASP

一样,

PHP

变量也可以不需要先定义,直接使用即可。对于变量的类型,在赋值时自动生

成。

PHP

中的各种变量均在变量名前加上



$



以示区别。

<?php$a="123";echo a;echo $a;?>

输入为



a123



六,

PHP

中的单引号和双引号之别

<?php$a="123";echo "$a";echo '$a';?>

输出为



123$a



,其中

echo "$a"

输出了变量

a

的值,而

echo '$a'

输出的是单引号中的字符

串本身。

<?php$a="123";echo "$a'$a'";?>

则输出为



123'123'



并不是



123$a



。虽然是

'$a'

,但置于双引号下变量还是被替换了。

所以,

可以得出:

只要是双引号中内容中的变量,

都会被替代;

而单引号中的则不作任何替换。

双引号中的内容需转义的,

新濠天地娱乐场

66bb.org

使用



\



前缀,比如



\\







\$







\"



。所

以要输入



123$a



,则为

<?php$a="123";echo "$a\$a";?>

再比如:

<?php$a="123";echo "$a\$a\"\\";?>

输出为



123$a"\





ASP

转学

PHP

需要注意:

1

,分隔符逗号







容易忘记写。

2

,变量的定义和使用。

3

,单引号和双引号的用法。

1.php注释:/* */、//、#等三种方式

2.echo:向浏览器输出字符串,echo其实是一个函数;返回值:无

3.print:向浏览器输出字符串,它也是一个函数;返回值:整型。

echo与print的功能几乎相同,但echo的运行速度比print要快,因为echo无返回值,而print有返回值

4.printf功能:向浏览器输出字符串;返回值:字符串的长度。

5.php变量的创建:格式 :$+标识符。变量的数据类型有整型、浮点型、字符串、布尔型、数组、对象。php是弱类型,其类型是通过赋值来确定变量的类型的。

/**
超级全局变量

* $GLOBALS :所有全局变量数组

* $_SERVER:服务器环境变量数组

* $_GET:通过get方法传递给该脚本的变量数组

* $_POST:通过POST方法传递给该脚本的变量数组

* $_COOKIE:cookie变量数组

* $_FILES:与文件上载相关的变量数组

* $_ENV:环境变量数组

* $_REQUEST:所有用户输入的变量数组

* $_SESSION:会话变量数组

* 常量一旦被定义,就不能被修改。除了自定义常量外,php还预定了许多常量,了解这些常量的简单方法就是运行phpinfo()命令。

*/

//常量定义函数,返回值为布尔型.
常量没有$符,变量才有$符的。(变量用小写,常量用大写)

define("TOTAL", 100);

echo TOTAL; //输出100

===================================================================================

魔法常量:并不真的是常量,因为这些魔法常量会根据使用的场合而改变值。

_FILE_ 当前文件名

_LINE_ 当前行号

_FUNCTION_ 当前函数名

_CLASS_ 当前类名

_METHOD_ 当前方法名

=================

<?php

$file = __FILE__;

echo $file; //输出该文件所在的完整路径

?>

6.php函数用法:php中的函数分为2类,一类为系统系统,该类函数可以直接使用;另一类为自定义函数。我们重点谈后者

函数的使用须先创建,后调用。只有函数被调用后,才可执行。

创建函数时,函数名不能与系统内置函数同名、也不能和已有的函数同名。只能包含字母、数字、下划线,并且不能以数字开头。【注意:在函数内部的变量与函数外的变量没有任何联系,因此,可以重名】

定义函数格式:function functionName($param1,$param2,...){

........;

return value;

}

调用函数格式:functionName(1,2,...);

当定义函数时,参数有默认值时,如果调用函数时有值传递,则默认值无效。如果调用函数时无参数传弟,则采用默认值。如下所示:

function functionArea3($radius=10){

$area = $radius*$radius*pi();

return $area;

}

//调用.这样做,大大提高函数灵活性.functionArea2(10)整体得到一个值在内存中,

echo functionArea3(20);

echo "<br/>";

带参数,有返回值的函数。尽量将函数封起来,不要修改函数内部的东西,将需要修改的东西暴露在函数体外面。

/**

* 返回多个值的函数调用:可以通过返回一个数组,然后使用list()函数构造即可

*/

function functionInfo($name,$age,$job){

//$userInfo是一个数组

//$userInfo = array($name,$age,$job);

$userInfo[]=$name;

$userInfo[]=$age;

$userInfo[]=$job;

return $userInfo;

}

//调用。print_r()是输出数组内容的函数

$arr = functionInfo("张三", 18, "学生");

print_r($arr);

echo "<br/>";

echo $arr[0];//输出数组的第一个元素

echo "<br/>";

list($xingming,$nianling,$zhiye) = functionInfo("张三", 18, "学生");

echo $xingming."今年".$nianling."岁了,他还是一个".$zhiye;

以上调用,都是按值传参。下面研究函数的引用传参。

<?php

/**

*

变量名是区分大小写的,所在$Name与$name是两个不同的变量。而函数名是不区分大小写的,那么函数调用也是不区分大小写的
*/

//按值传参

$prices = 50;

$tax = 0.5;

function functionPrices($prices,$tax){

//记住:按值传参,函数内部的变量与外部的变量没有关系

$prices = $prices + $prices*$tax;

$tax = $tax*$tax;

}

functionPrices($prices, $tax);

echo $prices; //50

echo '<br/>';

echo $tax; //0.5

echo '<br/>';

//按引用传参数

function functionPrices2(&$prices,$tax){

//记住:引用传参,外部访问到的变量,就是函数内部变量的值

$prices = $prices + $prices*$tax;

$tax = $tax*$tax;

}

functionPrices2($prices, $tax);

echo $prices; //75

echo '<br/>';

echo $tax; //0.5

?>

===============================================================================

/**

* 全局变量

* Enter description here ...

*
@var unknown_type

*/

$a = 5;

function fa(){

global $a; //
将$a设置成了全局变量,一般不推荐使用
$a =10;

}

fa();

echo $a; //10

echo '<br/>';

$a = 5;

function fa2(){

//global $a;

$a =10;

}

fa2();

echo $a; //5

echo '<br/>';

/**

* 使用超级全局变量,其实是一个数组形式

*/

$GLOBALS['a']=3;

function fb(){

$GLOBALS['a']=4;

}

fb();

echo $GLOBALS['a']; //4。因为是数组,所以,可以使用下面的格式输出

print_r($GLOBALS);//4 与上一句效果一样

===================================================================

创建自己的函数库,通常将函数的集合存放于一个文件中,然后通过文件调用即可。

文件包含:为了确保模块的重用性,最普遍的做法是把功能类似的隔离成单独的文件。在需要用到时,调用该文件即可。PHP提供了4种在应用程序中包含文件的语句。

i: include()语句将在其被调用的位置处判断并包含一个文件。包含一个文件与在该语句所在的位置复制该文件的数据具有相同的结果。
<?php
include “include.php”;
?>

ii:include_once()函数的作用与include()相同,不过它会首先验证是否已经包含了该文件。如果包含了该文件,则不再执行incluce_once().

<?php

include_once "include.php";

?>

iii: require()在很大程度上与include()相同,都是将一个模板文件包含到require()调用所在的位置。

<?php

require("require.php");

?>

iiii: require_once()函数的作用与require()作用相同,不过require_once()函数确保文件只包含一次。在遇到require_once()后,后面再试图包含相同的文件时都将被忽略。

<?php

require_once("require.php");

?>

require语句与include()语句几乎是等价的。二者的差异在于,当这两个语句调用失败后,require()将给出一个致命错误,而include()只是给出一个警告。

7.gettype():该函数用来获取变量的类型。返回值:返回string类型。

settype():该函数用来设置变量的类型。返回值:布尔值

1代表true,空代表false

isset():判断一个变量是否存在。返回一个布尔值

unset():销毁一个变量。

empty():检查一个变量的值是否为空。返回值:布尔值

is_integer():判断变量的类型

intval():变量的值的类型转换函数,只是临时转换,并未转换变量引用本身本身,只是将变量的值转换。需要与settype()函数区别开来。floatval()、strval()功能类似

8.表单:

如页面中的表单形式:

<form action="form_post.php" method="post">
姓名:<input type="text" name="userName" value="123"/>
<input type="submit" value="提交" />
</form>

/**

*字符串连接,使用.就可以

*请看form_post.php

* 访问表单变量

* 在php脚本中,可以以php变量的形式访问每一个表单域,其中php变量名称必须与表单的名称一致。

* 3种方式访问表单数据:

* $userName、不推荐使用

* $_POST["userName"]、推荐使用

* $HTTP_POST_VARS["userName"] 不推荐使用

*/

如何取出表单中传递过来的变量的值:首先看表单中采用的是post方式提交还是get方式提交。

post方式提交时,则取值的方式为:$_POST['userName'];//将上一张表单中name的名称的value值提取出来。userName为表单中的属性name的值

get方式提交时,则取值的方式为:则取值需要用$_GET['userName']。
userName为表单中的属性name的值

一,

PHP

脚本代码标记

PHP

的脚本是文件中一对特殊标记所包括的内容,如

ASP





<%....%>



,PHP

可看成是



<?...?>





然而为了适应

XML

标准以将

PHP

嵌入到

XML



XHTML

中,

PHP

不建议使用短格式的



<?...?>



,而建

议使用长格式标记



<?php...?>



此外

PHP

代码块还支持

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

的标记形式。

二,

PHP

指令分隔符

PHP

的每条语句需要由分号







隔开,

但对于

PHP

结束标记



?>



来说,因其自动隐含一个分号,



以不需要追加分号。

所以,一个

PHP

脚本的格式可如下:

<?php/*............ ............ ............ ............ *///

注意最后一行可以

没有分号

?>

三,

PHP

的注释

PHP

多行注释使用



/* ......... */



单行注释使用



#







//



四,

PHP

的输出

ASP

中使用



<%=...%>



快速输出单行,或使用



<%Response.Write("...")%>





PHP

中直接使用



echo()







print()



,比如:

<?phpecho "a";echo (b);echo ("c");echo d;?>

将输出为



abcd



,以上四种均能正常输出。

但这在

ASP

中,尤其是

echo

"a"

;和

echo

d;

均输出为字符串本身,是不可能的。这就需要了

解到

PHP

的变量定义。

五,

PHP

的变量



ASP

一样,

PHP

变量也可以不需要先定义,直接使用即可。对于变量的类型,在赋值时自动生

成。

PHP

中的各种变量均在变量名前加上



$



以示区别。

<?php$a="123";echo a;echo $a;?>

输入为



a123



六,

PHP

中的单引号和双引号之别

<?php$a="123";echo "$a";echo '$a';?>

输出为



123$a



,其中

echo "$a"

输出了变量

a

的值,而

echo '$a'

输出的是单引号中的字符

串本身。

<?php$a="123";echo "$a'$a'";?>

则输出为



123'123'



并不是



123$a



。虽然是

'$a'

,但置于双引号下变量还是被替换了。

所以,

可以得出:

只要是双引号中内容中的变量,

都会被替代;

而单引号中的则不作任何替换。

双引号中的内容需转义的,
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: