php是服务器端语言,js(javascript)是客户端(browser)语言,JSP(java server page)是服务器端语言需要TOMCAT服务器,ASP.NET是微软的服务器端语言。php目前最近版本是5.5
典型的web工作流程:客户端(浏览器)提出请求,web服务器根据请求跳转到制定页面,该页面由html和php代码(或者其他服务器端脚本代码)组成,web服务器解析php代码,并把结果和html一起返回给浏览器,然后浏览器呈现出来。
各种变量:
局部变量、全局变量、静态变量、可变变量
$b="outside";//全局 function foo(){ static $c="static";//静态 $a="abc";//局部 $$a="def";//可变变量的使用,该变量名为变量a的值,也就是变量名为abc,其值为def }
默认系统变量:$GLOBALS $_SERVER $_GET $_POST $_COOKIE $_FILES $_ENV $_REQUEST $_SESSION,可以通过phpinfo()函数查看
常量:php的常量使用define()函数来定义。define("COLOR","red");注意常量使用时不用加"$"
系统默认常量:__FILE__ __LINE__ __FUNCTION__ __CLASS__ PHP_VERSION PHP_OS
连接字符串用"."
算数运算符:+ - * / % ++ --
赋值运算符:+= -= *= /= %= .=
位运算符:&与 |或 ^异或 ~非 >>右移 <<左移
比较运算符:== === !=<> !== < > <= >=
逻辑运算符:and or xor !
数组运算符:+ == === != !==
类型运算符:$a instanceof A,返回bool值
错误抑制运算符:@,echo @($a/$b);
执行运算符:`ls /usr/`,当成命令行命令使用
判断运算符:$c=$a>$b?100:200;
流程控制语句:
条件语句:if/else/elseif/switch
if(){ } else{ } switch(表达式){ case 表达式1: 执行语句1; break; default: 执行语句; break; } 循环语句:foreach/while/do while/for while(){ } do{ }while() for($a=0;$a<5;$a++){ } foreach(数组名 as $value){ echo $value; } foreach(数组名 as $Key=>$value){ echo $key."is".$value; }跳出循环语句:break continue和C的一样用
函数:主要是php内置函数的使用,去网上下载个php函数手册
定义函数:
function nRecursion($n=1){ //$n=1 是参数的默认值 $s=1; for($i=1;$i<=$n;$i++){ $s=$s*$i; } //还可以返回数组 //return array(1,2,3); return $s; } $j=nRecursion(); $i=nRecursion(2);参数值传递和引用传递:
function add($num){ return $num++; } $num=10; add($num); add(&$num);
$myfunction="add"; $myfunction(1);//等同于调用函数add包含其他文件中的函数:
include "foo.php";//如果不存在,抛出警告 include_once "foo.php"; require "foo.php";//如果不存在,抛出错误 require_once "foo.php"; $string="exti()"; eval($string); //就是把字符串的内容当做函数来执行,eval本身就是求值的意思,像emacs里面的一样,eval比较危险且效率低,不建议使用