php基础笔记,一篇不错的PHP基础学习笔记

一篇不错的PHP基础学习笔记

更新时间:2007年03月18日 00:00:00   作者:

1、  PHP片段四种表示形式。

标准tags:<?php            ?>

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 result

// execute this if expression results in result1

break;

case result

// 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):

Listing 6.5

function sayHello() {   //定义函数sayHello

print "hello
";

}

$function_holder = "sayHello";  //将函数名赋值给变量$function_holder

$function_holder();  //变量$function_holder成为函数sayHello的引用,调用$function_holder()相当于调用sayHello

?>

4)        变量作用域:

全局变量:

Listing 6.8

$life=42;

function meaningOfLife() {

global $life;

/*在此处重新声明$life为全局变量,在函数内部访问全局变量必须这样,如果在函数内改变变量的值,将在所有代码片段改变*/

print "The meaning of life is $life
";

}

meaningOfLife();

?>

5)        使用static

Listing 6.10

function numberedHeading( $txt ) {

static $num_of_calls = 0;

$num_of_calls++;

print "

$num_of_calls. $txt

";

}

numberedHeading("Widgets");  //第一次调用时,打印$num_of_calls值为1

print("We build a fine range of widgets

");

numberedHeading("Doodads");  /*第一次调用时,打印$num_of_calls值为2,因为变量是static型的,static型是常驻内存的*/

print("Finest in the world

");

?>

6)        传值(value)和传址(reference):

传值:function function_name($argument)

Listing 6.13

function addFive( $num ) {

$num += 5;

}

$orignum = 10;

addFive( &$orignum );

print( $orignum );

?>

结果:10

传址:funciton function_name(&$argument)

Listing 6.14

function addFive( &$num ) {

$num += 5;  /*传递过来的是变量$num的引用,因此改变形参$num的值就是真正改变变量$orignum物理内存中保存的值*/

}

$orignum = 10;

addFive( $orignum );

print( $orignum );

?>

结果:15

7)        创建匿名函数:create_function(‘string1','string2'); create_function是PHP内建函数,专门用于创建匿名函数,接受两个string型参数,第一个是参数列表,第二个是函数的主体

Listing 6.15

$my_anon = create_function( '$a, $b', 'return $a+$b;' );

print $my_anon( 3, 9 );

// prints 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);

例子:

// open the connection

$conn = mysql_connect("localhost", "joeuser", "somepass");

// pick the database to use

mysql_select_db("testDB",$conn);

// create the SQL statement

$sql = "SELECT * FROM testTable";

// execute the SQL statement

$result = mysql_query($sql, $conn) or die(mysql_error());

//go through each row in the result set and display data

while ($newArray = mysql_fetch_array($result)) {

// give a name to the fields

$id = $newArray['id'];

$testField = $newArray['testField'];

//echo the results onscreen

echo "The ID is $id and the text is $testField 
";

}

?>

11、              接受表单元素:$_POST[表单元素名],

如ó$_POST[user]

接受url中queryString中值(GET方式):$_GET[queryString]

12、转向其他页面:header("Location: http://www.samspublishing.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、显示分类的完整例子:

//connect to database

$conn = mysql_connect("localhost", "joeuser", "somepass")

or die(mysql_error());

mysql_select_db("testDB",$conn) or die(mysql_error());

$display_block = "

My Categories

Select a category to see its items.

";

//show categories first

$get_cats = "select id, cat_title, cat_desc from

store_categories order by cat_title";

$get_cats_res = mysql_query($get_cats) or die(mysql_error());

if (mysql_num_rows($get_cats_res) 

$display_block = "

Sorry, no categories to browse.

";

} else {

while ($cats = mysql_fetch_array($get_cats_res)) { //将记录放入变量$cats中

$cat_id = $cats[id];

$cat_title = strtoupper(stripslashes($cats[cat_title]));

$cat_desc = stripslashes($cats[cat_desc]);

$display_block .= "

href="$_SERVER[PHP_SELF][U1] ?cat_id=$cat_id">$cat_title

//点击此url,刷新本页,第28行读取cat_id,显示相应分类的条目


$cat_desc

";

if ($_GET[cat_id] == $cat_id) { //选择一个分类,看下面的条目

//get items

$get_items = "select id, item_title, item_price

from store_items where cat_id = $cat_id

order by item_title";

$get_items_res = mysql_query($get_items) or die(mysql_error());

if (mysql_num_rows($get_items_res) 

$display_block = "

Sorry, no items in

this category.

";

} else {

$display_block .= "

  • ";

while ($items = mysql_fetch_array($get_items_res)) {

$item_id = $items[id];

$item_title = stripslashes($items[item_title]);

$item_price = $items[item_price];

$display_block .= "

href="showitem.php?item_id=$item_id">$item_title

 ($$item_price)";

[U2]                   }

$display_block .= "

";

}

}

}

}

?>

My Categories

 print $display_block; ?>

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();

?>

相关文章

1a1b05c64693fbf380aa1344a7812747.png

PHP入门速成(3)...2006-10-10

4f55910a645b073bc4fc65dc10dc14bd.png

怎样在PHP中通过ADO调用Asscess数据库和COM程序...2006-10-10

4f96a78db829b1556ff16de21e013c7a.png

《PHP编程最快明白》第四讲:日期、表单接收、session、cookie,需要的朋友可以参考下。2010-11-11

8cc1031babc6aff2319f1c6af8544aa0.png

今天小编就为大家分享一篇关于PHP children()函数讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧2019-02-02

0c932a99bb7b6f23c937db507070cc7b.png

注释在写代码的过程中非常重要,好的注释能让你的代码读起来更轻松,在写代码的时候一定要注意注释的规范,这里脚本之家小编就为大家整理一下,需要的朋友可以参考下2018-01-01

cca732bf65a93ed2ec0ac80c638460fe.png

透析PHP的配置文件php.ini...2006-10-10

2d9f31f2af7b675a3d153d2b7f1035a7.png

PHP.MVC的模板标签系统(五)...2006-09-09

b452cee8ec5cd9e58ab98eba17281e59.png

一个php作的文本留言本的例子(四)...2006-10-10

f4838ec7e2d4da28e0b57d4e852dadd4.png

本规范由 EasyChen 借鉴 SINA网络应用开发部《C++开发规范》和互动技术部《PHP4开发规范》,以及phpDocument规范 整理出的开发规范。我觉得非常不错, 适合PHP的开发,给大家参考,养成一个良好的编程风格是非常有必要的2014-01-01

最新评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值