PHP基础语法
2016-03-03 10:19
561 查看
1、PHP基本语法
(1)html和PHP混编(2)一个语句以 ; 分号结束
(3)定义变量要以$符号开头
(4)php的变量的数据类型,是变化的,php变量的数据类型是由上下文决定的。
(5)php区分英文大小写
(6)一个有效的变量名要以字母或下划线开头,后面跟上任意数量的字母、数字或下划线
注释:1、多行注释 /* */
2、单行注释 //
3、#开头,单行注释
2、PHP基本数据类型
(1)基本数据类型:
整型 integer1、整型值可以使用十进制,十六进制"0x",八进制0打头
2、php不支持无符号整数,即php中的整数都是有符号的
(php中,一个整数,一般占四个字节(与平台有关),一个字节占8bit(8位),最高位是符号位,0为整数,1为负数)
3、通过PHP_INT_SIZE可以显示在当前机器中一个整数几个字节。 echo PHP_INT_SIZE;
(可以表示的最大值用PHP_INT_MAX查看)
4、如果一个整数的范围超过最大范围,自动转为float型
小数(浮点)类型 float/double
浮点数的字长和平台相关,通常最大值是1.8e308(1.8乘以10的308次方)并具有14位十进制字的精度。
(从左边起第一个非零的数,开始计入精度位数)
布尔类型 boolean
1、要指定一个布尔值,使用关键字TRUE或FALSE,两个不区分大小写
2、以下值会被当做false来对待:
布尔值FALSE本身,整数型0,浮点型0.0,空字符串,以及字符串"0",没有任何元素的数组,没有成员变量的对象,特殊类型null,
读取没有任何标记(tags)的xml文档生成的SimpleXML对象
字符串型 String
1、一个字符串是由一个系列的字符组成,一个字符就是一个字节。
2、PHP对字符串的长度限制只和运行PHP程序这台机器的内存大小有关,即php字符串可以足够大。
3、字符串常见的定义方法为单引号和双引号
$_i = 90;
$_user1 = "hello$_i";
$_user2 = 'hello$_i';
echo $_user1; //输出:hello90
echo $_user2; //输出:hello$_i
由此,当一个变量包含在双引号中时,会输出它的值,而包含在单引号中只输出字符串本身.
(2)特殊数据类型:
null资源类型 resource
(3)复合数据类型:
数组 array对象 object
PHP类型的自动转换
变量的类型由PHP根据该变量的上下文在运行时决定,可以通过var_dump(变量1,变量2,......);3、PHP表达式 —— 任何有值的东西
(1)算数运算符
1448a自加:++ 自减:--
$_a = $_b++;
echo $_a; //输出:1
$_c = 1;
$_a = $_c;
$_c = $_c + 1;
echo $_a; //输出:1
其他: += , -= , /= , %=比较运算符: == 判等=== 全等,值相等,类型相同,返回true!== 值不相等,或类型不同,则返回true
(2)逻辑运算符
与: $_a and $_b $_a 和$_b都为true,则表达式为true$_a && $_b $_a 和$_b都为true,则表达式为true
或:$_a or $_b $_a 或$_b为true,则表达式为true
$_a || $_b $_a 或$_b为true,则表达式为true
异或:$_a xor $_b $_a 和$_b不相同,则表达式为true
取反:!$_a 如果$_a = true ,则返回false
特别注意:运算符的优先级顺序
||的优先级高于or,&&的优先级高于or
= 的优先级比 or,and都高
(3)三元运算符
规则:在expr1求值为TRUE时值为expr2,在expr1求值为FALSE时值为expr3。
(4)字符串运算符
有两个字符串运算符,使用连接运算符(".").$_a = 10; $_b = 90; echo $_a . $_b ; 输出 1090
(5)类型运算符
4、PHP流程控制
顺序流程控制,就是不加控制的流程,顺序执行。分支控制,有选择地执行代码。
(1)分支控制流程
1、if语句(1)单分支:
if(条件表达式) {
若干语句
}
(2)双分支:
if(条件表达式) {
若干语句
}
else {
若干语句
}
(3)多分支:
if(条件表达式) {
若干语句
}
if else(条件表达式) {
若干语句
}(可多个)
else {
若干语句
}
2、switch语句 同JAVA
switch(表达式) {
case 常量1 : 若干语句;break;
......
default : 若干语句; (可选)
}
3、if与switch的区别
if是对某个范围的判断,而switch是对一个点的判断。
应用场景:当分支就是几个点的时候,应当使用switch,如果你的分支是几个区域(范围)的判断,
则考虑使用if。
(2)循环控制流程
1、for循环for(循环初值 ; 循环条件 ; 步长) {
循环语句
for($i=0;$i < 10 ;$i++) {
echo "<br>$i";
}
2、while循环
循环语句
}
例子:
$j = 0;while($j < 10) {
echo "<br>$j";
$j++;
}
3、do-while循环
循环语句
}while(循环条件)
例子:
$l = 6;
do{
echo "<br><br>$l";
}while($l>7);
(2)break语句后面带的数字,不能超过实际可以跳出的循环层数,否则会报错。
例: break 3; #跳出3层循环
5、continue
continue在循环结构中用来跳过本次循环中剩余的代码,并在条件求值为真时开始执行下一次循环
,continue可接受一个可选的数字参数决定跳过几重循环,到循环结尾。
默认: continue 1;
6、goto 仅在php5.3及以上版本有效
通过goto语句我们可以将程序跳转到指定的地方执行。
例子:
goto a;
echo "aa";
a: echo "bb";
执行结果:bb
5、常量
可以理解是一种特殊的变量,一旦被定义,就不能再改变或取消定义。常量与变量的区别:
(1)常量前面没有美元符号($);
(2)常量通过define()函数定义,而不能通过赋值语句。
(3)常量可以在任何地方定义和访问,而变量有作用域。
(4)常量一旦定义就不能被重新定义或者取消定义。
(5)常量的值是标量(String,Integer,float,boolean)
例子: 常量的命名为全大写字母
<?php
define("DBHost","192.168.1.8");
echo DBHost;
const DBPort = 3306; #PHP5.3后可使用
echo '<br>'.DBPort;
?>
6、函数
为完成某一功能的程序指令(语句)的程序,称为函数。1、函数的使用
function 函数名(参数1,参数2......) {函数体(语句)
return 返回值;(可选)
}
使用方法:
require "functions.php"; 引入含有count方法的页面
$res = count($num1,$num2);
php执行时,一旦遇到函数的调用,就会开辟一个新栈,执行该函数的代码,执行完毕后
,返回继续执行后续代码。
注意:各栈的变量时相互独立的。
2、函数的深入讨论
(1)函数的参数列表可以是多个可变参数函数:
test(1,2,3);
function test() {
echo func_num_args(); //输出参数数量
$varArray = func_get_args(); //获取参数,返回参数数组
foreach($varArray as $value) {
echo '<br>'.$value;
}
}
(2)参数的数据类型可以是任意的类型(array,integer,float,boolean,String,object)
(3)函数的命名跟自定义变量一样(不区分大小写)
(4)一个自定义函数中的变量是局部的,函数外不生效。
(5)使用global全局变量的时候,可使用函数外的变量。
$a = 12;
function test() {
global $a; //表示在function test范围内使用函数外面的$a
$a = 45;
}
test();
echo $a; //输出45
(6) 销毁指定的变量 unset(变量名) 如果在函数中 unset() 一个全局变量,则只是局部变量被销毁
例子:
$a = 12;
function test($a) {
unset($a); //表示不在test函数范围内,再使用$a,后面需要全新定义
$a = 24;
echo $a; //输出24
}
echo $a; //输出12
(7)函数默认值
例子:
function test($a,$b = 2) {
$res = $a + $b;
echo $res;
}
$e = 32;
$f = 55;
test($e); //输出34
test($e,$f); //输出87
(8)PHP默认是值传递,如果需要引用传递,使用:&变量名
例子:
$b = 32;
function test(&$b) {
$b = 24;
}
echo $b; 输出:32
7、引入页面
1、引入其他页面到当前页面(1)引入页面的方法
1、require 'b.php' ;
2、$b = 'b.php'; require $b;
3、require('b.php');
(2)require() 和 require_once()细节
一般放在php页面的最前面,php在执行前,就读入require所引入的文件,一旦出现错误,则退出程序。
区别:前者遇到文件就引入,后者会判断是否已经引入过,避免重复引入。
1、节省资源 2、可以避免重复定义的错误
注意:一个php文件中,函数名不能重复,引入的函数同样不能重复。
2、包含其他页面到当前页面
(1)包含其他页面的方法
1、include('b.php')
2、include 'b.php'
3、$b = 'b.php'; include $b;
(2)include() 和include_once()区别是: include_once()可以避免二次包含
3、require和include的区别
include如果出现了错误,会继续执行。
require如果出现错误,则会终止程序。
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- PHP 5.3.0 安装分析心得
- apache 环境下 php 的配置注意事项
- ASP.NET、ASP、PHP、JSP之间有什么区别?
- PHP VBS JS 函数 对照表
- C语言实现的统计php代码行数功能源码(支持文件夹、多目录)
- php xml 入门学习资料