php 环境
xamp wamp phpstudy等集成软件网上很多
PHP基础语法
PHP语法是以<?php开始
?>结束的//php 文件的默认扩展名是.php
例如(用PHP输出helloworld):
<!DOCTYPE html>
<html>
<body>
<?php
echo "hello world";
//PHP中的注释可以是 //
/* 也可以是(这个是多行注释)*/ /**/
?>
</body>
</html>
PHP变量
- [x] 变量必须以$字符开始后面跟变量名称
- [x] 变量名只能是大小写字母下划线和数字
- [x] 数字不能作为变量的开始
- [x] 变量名区分大小写且不能有空格
<?php
$test="变量第一次赋值的时候被创建";
$x=1;
$y=23.4;
?>
- PHP变量不必声明数据类型(弱类型语言)
- PHP会根据变量内容的值自动转换数据类型
PHP变量作用域
$ php 有四种不同的变量作用域
- local
- global
- static
- parameter
<?php
$x=3;
function test(){
$y=2;
echo "x:",$x,"<br>y:",$y;
//此时x没有值需要使用关键字声明
}
test();
echo "x:",$x,"<br>y:",$y;
// y属于局部变量所以y此时没有值
?>
- [x] global关键字
<?php
$x=5;
$y=19;
function test(){
global $x,$y;
$y=$x+$y;
}
test();
echo $y;
?>
- [x] global数组
<?php
$x=5;
$y=19;
function test(){
$GLOBAL['y']=$GLOBAL['x']+$GLOBAL['y'];
}
test();
echo $y;
?>
- [x] static作用域
<?php
function test(){
static $x;
echo $x;
$x++;
echo "<br>";
}
test();
test();
test();
/*static 函数执行完毕函数内部的static变量不被释放留由下次执行函数使用*/
?>
echo 和 print 语句
- echo 可以输出多个字符串(括号可加可不加)
- print 只可以输出一个字符串,并且有返回值,返回值为1
<?php
$x=3;
$y=23;
echo "x=",$x,",y=",$y;
//当然可以这么输出
echo "x= $x ,y= $y";
?>
<?php
$a=3;
$b=23;
print "<br>";
print "a=$a,b=$b";
?>
PHP EOF
- 必须后接分号
- EOF可以用其它字符代替但是开始结尾必须一样
- 结束标志必须独占一行
- 变量可以正常解析,函数不可以
<?php
$name=nk1999;
echo <<<EOF
我的名字:$name<br>
<h1>test</h1>
EOF;
//EOF结束必须独立一行且前后不能空格
?>
PHP数据类型
- String 字符串
- integer 整型
- float 浮点型
- boolean 布尔型
- array 数组
- object 对象
- NULL 空值
PHP类型比较
- == 只比较值不比较类型
- === 严格比较比较值和类型
PHP常量
-
常量是个标识符在该脚本中值不能改变
-
常量不需要加$修饰符
<?php define("name","nk1999"); echo name; define("myname","nk1999",true);//不区分大小写 echo MYNAME; ?>
-
常量是全局的定义以后可以在整个脚本任意地方使用
字符串变量以及函数
- strlen() 返回字符串的长度
<?php
echo strlen("hello world!");//返回字符串长度
?>
- strpos() 查找字符串或者指定文本位置
<?php
$txt="hello worldhello worldhello world";
echo strpos($txt,"world");
?>
PHP运算符
-
-
-
- /
- % 取余
- -x 取反
- . 并置 连接两个字符串
- = 赋值运算
- ++x x++ 自增
- --x x-- 自减
- == 等于不比较类型
- === 绝对等于,比较类型
- != 不等于
- <> 不等于
- !== 绝对不等于 包括类型
- <> 小于大于
- <=>= 小于等于大于等于
- and 与
- or 或
- xor 异或
- && 与
- || 或
- ! 非
数组运算
- x+y x和y的集合
- == 相等
- === 恒等顺序也要对
- != 不相等
- <> 不相等
- !== 不恒等
三元运算符 ?:
PHP if ...else语句
if语句
<?php
/*
if(条件){
如果条件为真执行此语句块,否则不执行;
}
*/
$a=3;
if($a==3){
echo $a;
}
?>
if...else语句
<?php
/*
if(条件){
如果条件为真执行此语句块;
}else{
如果条件不为真执行此语句块;
}
*/
$a=3;
if($a==3){
echo $a;
}else{
echo "a不为3";
}
?>
if...elseif...else
<?php
/*
if(条件){
条件成立执行代码
}elseif(条件){
条件成立执行代码
}else{
条件不成立执行代码
}
*/
$a=3;
if($a==3){
echo a=3;
}elseif($a==2){
echo "a=2";
}else{
echo "a不是2也不是3";
}
?>
PHP switch语句
如果有选择执行若干代码之一使用switch
<?php
$a=2;
switch($a){
case 1:echo "a=1";break;//break用于跳出否则会继续往下输出
case 2:echo "a=2";break;
case 3:echo "a=3";break;
default:echo "a不是123";//最后一句不用跳出
}
?>