慕课网--PHP入门篇--学习笔记
慕课网--PHP入门篇:http://www.imooc.com/learn/54
-------------------------------------------------------------------
PHP及其功能:
1、运行在服务器端
学会了php,就可以指挥服务器给你干活,WEB网站的大部分数据都是存储在服务器端的,php就是用来处理这些存储在服务器的数据的。
2、跨平台
服务器可以是多种平台的服务器,比如Linux、Windows、Unix,你都可以指挥(不用怕只能指挥一种服务器了)
3、脚本语言
它是通过编写脚本,也就是一行行的计算机指令,来指挥服务器工作,因此,在编写php的过程其实就是与服务器交流的过程,交流的语言就是php;
4、免费
PHP-如何定义变量:
定义变量就是向服务器的内存(服务器的内存,我们可以当做一个大仓库)申请空间(子仓库),用来存储数据。这时我们就需要用到变量名(仓库的名字)和变量值(仓库存放的东西);
PHP-变量名的命名规则:
1、变量名必须以字母或下划线 "_" 开头,如 “$_name” ,"$name","$name2"等;
2、变量名只能由字母、数字、"_" 组成,还能包含汉字。如:"$_qq" ,"$qq308","$my_apple" ,"$name我等";
3、变量名不允许包含空格。当变量名由多个单词组成,建议使用 "_" 进行分隔(比如 $my_name),称为 下划线法;或者以大写字母开头(比如 $myApple),称为 驼峰命名法;
注意:在PHP中变量名是区分大小写的;
PHP-什么是变量的数据类型:
在变量中, 由于变量占用的空间单元不一样(占的底盘大小不一样),也分成几种数据类型,就像超市商品的包装袋,有几种不同类型,不同的商品使用不同的包装袋。我们可以通过使用 "memory_get_usage" 获取当前PHP消耗的内存。
PHP变量的数据类型:
在PHP中,支持8种原始类型,其中包括4种标量类型、两种复合类型和两种特殊类型。PHP是一门松散类型的语言,不必向PHP声明变量的数据类型,PHP会自动把变量转换为自动的数据类型;
1、PHP标量类型—布尔类型:
布尔类型:只有两个值,一个是TRUE,另一个是FALSE;它不区分大小写;主要用在条件结构中;当用"echo"指令输出布尔类型时,如果是TRUE,就输出“1”,如果是FALSE,则什么也不输出;可以用"var_dump"函数,获取它真正的数据类型;
2、PHP标量类型—整型:
整型(integer):类似于常见的整数。他可以用十进制、八进制、十六进制制定。十进制就是日常使用的数字;八进制,数字前必须加上"0"(这个0是阿拉伯数字0);十六进制,数字前必须加"0x";
3、PHP标量类型—浮点型:
浮点型(浮点数、双精度数或实数),也就是通常所说的小数,可以用小数点,或者科学计数法表示。科学计数法可以使用小写的e,也可以使用大写的E。
4、PHP标量类型—字符串:
字符串是由一系列字符组成,在PHP中,字符和字节一样,也就是说,一共有256种不同字符的可能性;
字符串型可以用三种方法定义:单引号形式,双引号形式,Heredoc结构形式;
a、当你的字符串中包含引号的时候,我们怎么办:
第一种方案:在单引号中嵌入双引号;
第二种方案:在双引号中嵌入单引号;
第三种方案:使用转义符 “\” ;
b、当引号遇到美元怎么办:
当双引号中包含变量时,变量会与双引号中的内容连接在一起;
当单引号中包含变量时,变量会被当做字符串输出;
c、当我的字符串很长怎么办:
我们可以使用Heredoc结构形式的方法来解决该问题,首先使用定界符表示字符串(<<<),接着在 “<<<” 之后提供一个标识符GOD,然后是字符串,最后以提供的这个标识符结束字符串。
<?php
$string1 = <<<GDO
我有一只小毛驴,我从来也不骑。
有一天我心血来潮,骑着去赶集。
我手里拿着小皮鞭,我心里正得意。
不知怎么哗啦啦啦啦,我摔了一身泥.
GOD;
echo $string1;
?>
1、PHP第一种特殊类型—资源:
资源(resource):资源是由专门的函数来建立和使用的,例如打开文件、数据连接、图形画布。我们可以对资源进行操作(创建、使用和释放)。任何资源,在不需要的时候应该被及时释放。如果我们忘记了释放资源,系统自动启用垃圾回收机制,在页面执行完毕后回收资源,以避免内存被消耗殆尽。
2、PHP第二种特殊类型—空类型:
NULL(NULL):NULL是空类型,对大小写不敏感,NULL类型只有一个取值,表示一个变量没有值,当被赋值为NULL,或者尚未被赋值,或者被unset(),这三种情况下变量被认为为NULL。
PHP-什么是常量:
常量可以理解为值不变的量(如圆周率);或者是常量值被定义后,在脚本的其他任何地方都不可以被改变。PHP中的常量分为自定义常量和系统常量。
自定义常量是根据我们开发的需要,而定义的常量,它通过使用PHP中的函数define()定义。
define()函数的语法格式为:
bool define(string $constant_name, mixed $value [,$case_sensitive = true])
PHP-常量的作用:
常量主要功效是可以避免重复定义,篡改变量值。使用常量还能提高代码的可维护性。
PHP-系统常量:
系统常量是PHP已经定义好的常量,我们可以直接拿来使用,常见的系统常量有:
(1) __FILE__ :php程序文件名。它可以帮助我们获取当前文件在服务器的物理位置。
(2) __LINE__ :PHP程序文件行数。它可以告诉我们,当前代码在第几行。
(3) PHP_VERSION:当前解析器的版本号。它可以告诉我们当前PHP解析器的版本号,我们可以提前知道我们的PHP代码是否可被该PHP解析器解析。
(4) PHP_OS:执行当前PHP版本的操作系统名称。它可以告诉我们服务器所用的操作系统名称,我们可以根据该操作系统优化我们的代码。
PHP-常量如何取值:
获取常量值的有两种方法取值。第一种是使用常量名直接获取值;第二种是使用constant()函数;
PHP-如何判定常量是否被定义:
defined()函数可以帮助我们判断一个常量是否已经定义,其语法格式为:bool defined(string constants_name)
它只有参数constant_name,指的是要获取常量的名称,若存在则返回布尔类型true,否则返回布尔类型false; (注:bool表示函数返回值类型为布尔类型)
PHP中常用的运算符:
什么是运算符:
PHP运算符一般分为算术运算符、赋值运算符、比较运算符、三元运算符、逻辑运算符、字符串连接运算符、错误控制运算符。
1、PHP中的赋值运算符:
PHP的赋值运算符有两种,分别是:
(1) “=”:把右边表达式的值赋给左边的运算数。它将右边表达式值复制一份,交给左边的运算数。换而言之,首先给左边的运算数申请了一块内存,然后把复制的值放到这个内存中。
(2) “&”:引用赋值,意味着两个变量都指向同一个数据。它将使两个变量共享一块内存,如果这个内存存储的数据变了,那么两个变量的值都会发生变化。
2、PHP中的三元运算符:
(“?:”)三元运算符也是一个比较运算符,对于表达式(expr1)?(expr2):(expr3),如果expr1的值为true,则此表达式的值为expr2,否则为expr3。
3、PHP中的字符串连接运算符:
字符串连接运算符是为了将两个字符串进行连接,PHP中提供的字符串连接运算符有:
(1)连接运算符(“.”):它返回将右参数附加到左参数后面所得的字符串。
(2)连接赋值运算符(“.=”):它将右边参数附加到左边的参数后。
注意:连接赋值运算符在连接字符串的基础上,还有赋值功能。
4、PHP中的错误控制运算符:
PHP中提供了一个错误控制运算符“@”,对于一些可能会在运行过程中出错的表达式时,我们不希望出错的时候给客户显示错误信息,这样对用户不友好。于是,可以将@放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都被忽略掉;
如果激活了track_error(这个玩意在php.ini中设置)特性,表达式所产生的任何错误信息都被存放在变量$php_errormsg中,此变量在每次出错时都会被覆盖,所以如果想用它的话必须尽早检查。
注意:错误控制前缀“@”不会屏蔽解析错误的信息,不能把它放在函数或类的定义之前,也不能用于条件结构例如if和foreach等。
PHP中循环结构之foreach循环语句:
在PHP中foreach循环语句,常用于遍历数组,一般有两种使用方式:不取下标、取下标。
(1)只取值,不取下标:
<?php
foreach (数组 as 值){
//执行的任务
}
?>
(2)同时取下标和值:
<?php
foreach (数组 as 下标 => 值){
//执行的任务
}
?>