php100视频教程学习笔记第一讲:2011年1月10日22:02:50PHP类似于C,Perl,移植性非常好,参考源码多。
lamp:linux wamp:windowsWampServer 5:PHP5.2.5 MySQL5 Apache2 PHPMyAdmin2.11.1.1 SQLiteManager 1.2.0WAMPS display errors, short open tag:短标签模式WampServer2标签语言:<?...?><?php...?><%..%>;结束,否则会出现错误。
注释风格:/**/;//;# Unix风格单行注释学会使用注释来屏蔽符号来调试第二讲:2011年1月10日22:03:04弱类型只是局部变量 _和字母开头标量类型:Boolean integer float(double) string复合类型:array object" "支持转译字符,''不支持转译字符。
$bo=array(1,2,3); $bo=arrary("A"=>1,"B"=>2);discuz linux 777:最高权限; 775第三讲:2011年1月10日22:31:461、算术运算。
2、赋值运算。
3、比较运算。
4、逻辑运算。
5、递增递减运算。
【+= *===只判断值而不判断类型;===完全比较:数值类型和数值FALSE不输出。
&&逻辑与and; ||逻辑或or; xor逻辑异或;先将比较的两边转换成布尔类型的,在执行它们的关系。
得到值为布尔值。
递增递减只能操作变量。
$a++ 相当于+1后输出;++$a 先运算后加$a;;$a--;--$a;做运算赋值以后在输出:$a=6;echo $a++; //输出为6;】第四讲:条件语句2011年1月10日22:22:401、if(expr)echo TRUE;elseecho FALSE;2、规范if(expr){echo TRUE}else{echo FALSE;}3、if(expr){echo TRUE;}elseif(expr){ echo con;}else{echo FALSE;}switch:switch($i){ case 0:echo"输出0";break;case 1:echo "输出1";break;case 2:echo "输出2";break;default:echo "什么都不是";}第五讲:循环语句 2011年1月10日22:54:28【break n循环控制语句;do..while;for;do{....;}while(expr)//先做一次while(expr){....;}for($i=1;$i<=10;$i++){【if($i==5) break 1;】echo "循环".$i."<br>";}】第六讲:array 2011年1月10日23:37:20【数组可包含任意类型,包括另一个数组。
复合数组、二维数组array(key=>value,key=>value...)$arr=arry(3,4,5,6);//KEY从0开始$arr=arry("id"=>2,"title"=>3); echo $arr[title];print_r($arr);$arr=array(array(1,2),array(3,4)); print_r($arr); echo $arr[0][1];Array ( [0] => Array( [0] => 1 [1] => 2 ) [1] => Array ( [0] => 3 [1] => 4 ) ) ;修改:$arr[]=value ;统计:count($arr);判断是否是组数:is_array($arr);另一种方法explode对变量中某一符号进行拆分。
explode("key",value);遍历数组:for while 最巧妙的是foreachforeach($arr as $key=>$value){....;}-----------------------------------------双引号里面可以直接用变量。
<?PHP$arr=array(a,b,c,d,e);foreach($arr as $key=>$value){echo "关键字 $key 对应值 $value "."<br>";}?>关键字 0 对应值 a关键字 1 对应值 b关键字 2 对应值 c关键字 3 对应值 d关键字 4 对应值 e----------------------------------------】第七讲函数系统/自定义函数:解决一些常见问题实现制作好的"模" function func_name($val){....;}自定义函数中的变量是局部的,函数外不生效。
global全局变量的时候,在函数外才可以使用变量。
global(26:08)可用unset($var)删除。
【return函数返回函数内部值。
传值和选择性传值function_exists()判断是否是函数。
exit exist引用返回值,用&。
<?PHP$myname="我的名字";$name="翟乃强";echo "在函数之前输出的".$name."<p>";function _pr($myname,&$name){$name=$myname."是".$name."<p>";echo $name;}_pr($myname,$name);echo "这个是加过&的输出".$name;?>引用赋值。
这意味着新的变量简单的引用(换言之,“成为其别名”或者“指向”)了原始变量。
改动新的变量将影响到原始变量,反之亦然。
这同样意味着其中没有执行复制操作<?php$foo = 'Bob';// Assign the value 'Bob' to $foo $bar = &$foo;// Reference $foo via $bar. $bar = "My name is $bar";// Alter $bar...//echo $bar;echo $foo; // $foo is altered too.?>】第八讲 2011年1月11日20:47:32mysql:瑞典mysql AB公司,现已经被Sun公司收购。
支持FreeBSD、linux、MAC、windows系统。
与其他大型数据库oracle、DB2、sqlserver等相比功能稍弱一些。
Postgresql 发展势头很猛。
MYSQL默认访问端口3306。
官方工具访问:MySqlAdministrator tool。
第三方:mysqlexec、mysql连接器。
web方式phpMyAdmin。
MySql Administrator tool:主要两个工具MySql Administrator、MySql QueryBrower。
比较:客户端执行效率高,安全性高。
WEB简单、不受限制。
整数型:tinyint smalllint int bigint小数型:float double decimal(M,D)M:总共的位数,D小数的位数。
字符型:char varchar日期型:datetime time timestamp备注型:tinytext text longtextcreate database ``create table`表名`drop table`表名`alter table `` add ``... after ``alter table `` drop ``alter talbe ``add primary key``rename talbe`原字段`to`新字段`ALTER TABLE `test` CHANGE `fortext` `fortext` VARCHAR( 10 ) CHARACTER SET gbk COLLATEgbk_chinese_ci NOT NULLalter table `表`dorp`原字段`alter table`表` add `新字段`.....after`原字段`ALTER TABLE `test` ADD `tst` VARCHAR( 5 ) CHARACTER SET gbk COLLATE gbk_chinese_ci NOTNULL ;eg:create table`test`(`id` int(10) not null auto_increment,`uid` varchar(10) not null default`0`,`regdate` date not null,`remark` text null,primary id(`id`))INSERT INTO `newdb`.`test` (`id` ,`uid` ,`regdate` ,`remark`)VALUES ('1', 'chiang', '2009-01-18', '我的测试');update ``.``set``=''where ``.``=1;$sql = 'update `test` set `fortext`=\'中文支持看看哪\' where id=\'1\'';VK717200第九讲 2011年1月18日22:02:231、select 查询字段 from 表名 where 条件查询字段:通配符、字段名、字段别名。
表名:数据库.表名,表名查询条件:=、<>、in、not in、like、between、not between、<、>条件:and or ()select * from test where id in(1,2,4)select * from test where `uid` like '%王%' _select * from test where id between 1 and 3WHERE FirstName LIKE '[JT]im' 可以找到三个字母的、以im 结尾并以 J 或 T 开始的名字(即仅有 Jim 和 Tim)? WHERE LastName LIKE 'm[^c]%' 可以找到以 m 开始的、后面的(第二个)字母不为 c 的所有姓。