1、 php片段四种表示形式。
标准tags:
short tags: ?> 需要在php.ini中设置short _open_tag=on,默认是on
asp tags: 需要在php.ini中设置asp_tags=on,默认是off
script tags:
2、 php变量及数据类型
1)$variable ,变量以字母、_开始,不能有空格
2)赋值$variable=value;
3)弱类型,直接赋值,不需要显示声明数据类型
4)基本数据类型:integer,double,string,boolean,object(对象或类),array(数组)
5)特殊数据类型:resourse(对第三方资源(如数据库)的引用),null(空,未初始化的变量)
3、 操作符
1)赋值操作符:=
2)算术操作符:+,-,*,/,%(取模)
3)连接操作符:. ,无论操作数是什么,都当成string,结果返回string
4)combined assignment operators合计赋值操作符:+=,*=,/=,-=,%=,.=
5)automatically incrementing and decrementing自动增减操作符:
(1)$variable+=1 $variable++;$variable-=1 $variable-,跟c语言一样,先做其他操作,后++或-
(2)++$variable,-$variable,先++或-,再做其他操作
6)比较操作符:= =(左边等于右边),!=(左边不等于右边),= = =(左边等于右边,且数据类型相同),>=,>,
7)逻辑操作符:|| ó or,&&óand,xor(当左右两边有且只有一个是true,返回true),!
4、 注释:
单行注释:// ,#
多行注释:/* */
5、 每个语句以;号结尾,与java相同
6、 定义常量:define(“constans_name”,value)
7、 打印语句:print,与c语言相同
8、 流程控制语句
1)if语句:
(1)if(expression)
{
//code to excute if expression evaluates to true
}
(2)if(expression)
{
}
else
{
}
(3)if(expression1)
{
}
elseif(expression2)
{
}
else
{
}
2)swich语句
switch ( expression )
{
case result1:
// execute this if expression results in result1
break;
case result2:
// execute this if expression results in result2
break;
default:
// execute this if no break statement
// has been encountered hitherto
}
3)?操作符:
( expression )?returned_if_expression_is_true:returned_if_expression_is_false;
4)while语句:
(1) while ( expression )
{
// do something
}
(2)do
{
// code to be executed
} while ( expression );
5)for语句:
for ( initialization expression; test expression; modification expression ) {
// code to be executed
}
6)break;continue
9、 编写函数
1)定义函数:
function function_name($argument1,$argument2,……) //形参
{
//function code here;
}
2)函数调用
function_name($argument1,$argument2,……); //形参
3)动态函数调用(dynamic function calls):
1:
2:
3:
listing 6.5 4:
5:
6:
13:
14:
4)变量作用域:
全局变量:
1:
2:
3:
listing 6.8 4:
5:
6:
14:
15:
5)使用static
1:
2:
3:
listing 6.10 4:
5:
6:
17:
18:
6) 传值(value)和传址(reference):
传值:function function_name($argument)
1:
2:
3:
listing 6.13 4:
5:
6:
14:
15:
结果:10
传址:funciton function_name(&$argument)
1:
2:
3:
listing 6.14 4:
5:
6:
14:
15:
结果:15
7)创建匿名函数:create_function(‘string1’,’string2’); create_function是php内建函数,专门用于创建匿名函数,接受两个string型参数,第一个是参数列表,第二个是函数的主体
1:
2:
3:
listing 6.15 4:
5:
6:
11:
12:
8)判断函数是否存在:function_exists(function_name),参数为函数名
10、用php连接mysql
1)连接:&conn=mysql_connect(localhost, joeuser, somepass);
2)关闭连接:mysql_close($conn);
3) 数据库与连接建立联系:mysql_select_db(database name, connection index);
4) 将sql语句给mysql执行:$result = mysql_query($sql, $conn); //增删改查都是这句
5) 检索数据:返回记录数:$number_of_rows = mysql_num_rows($result);
将记录放入数组:$newarray = mysql_fetch_array($result);
例子:
1:
11、接受表单元素:$_post[表单元素名],
如ó$_post[user]
接受url中querystring中值(get方式):$_get[querystring]
12、转向其他页面:header(location: http://www.webjx.com);
13、字符串操作:
1)explode(“-”,str)ójava中的splite
2)str_replace($str1,$str2,$str3) =>$str1要查找的字符串,$str2用来替换的字符串,$str3从这个字符串开始查找替换
3)substr_replace:
14、session:
1)打开session:session_start(); //也可以在php.ini设置session_auto_start=1,不必再每个script都写这句,但是默认为0,则必须要写。
2)给session赋值:$_session[session_variable_name]=$variable;
3)访问session:$variable =$_session[session_variable_name];
4)销毁session:session_destroy();
15、显示分类的完整例子:
1: $cat_title
//点击此url,刷新本页,第28行读取cat_id,显示相应分类的条目
26:
$cat_desc
; 27:
28:if ($_get[cat_id] == $cat_id) { //选择一个分类,看下面的条目
29: //get items
30: $get_items = select id, item_title, item_price
31: from store_items where cat_id = $cat_id
32: order by item_title;
33: $get_items_res = mysql_query($get_items) or die(mysql_error());
34:
35: if (mysql_num_rows($get_items_res)
36: $display_block =
sorry, no items in
37: this category.
; 38: } else {
39:
40: $display_block .=
; 41:
42: while ($items = mysql_fetch_array($get_items_res)) {
43: $item_id = $items[id];
44: $item_title = stripslashes($items[item_title]);
45: $item_price = $items[item_price];
46:
47: $display_block .=
48: href=\showitem.php?item_id=$item_id\>$item_title
49: (\$$item_price);
[u2] 50: }
51:
52: $display_block .=
; 53: }
54: }
55: }
56: }
57: ?>
58:
59:
60:
my categories 61:
62:
63: print $display_block; ?>
64:
65:
16、php连接access:
$dbc=new com(adodb.connection);
$dbc->open(driver=microsoft access driver (*.mdb);dbq=c:\member.mdb);
$rs=$dbc->execute(select * from tablename);
$i=0;
while (!$rs->eof){
$i+=1
$fld0=$rs->fields[username];
$fld0=$rs->fields[password];
....
echo $fld0->value $fld1->value ....;
$rs->movenext();
}
$rs->close();
?>