java程序员一天学会php

来源:互联网 发布:免费网络电视直播软件 编辑:程序博客网 时间:2024/06/06 04:58


  此文是本人在学习php时,看到的java程序员最快入门php的总结,所以转载到博客中,在此刚写原文博主的总结!原文链接地址:http://blog.csdn.net/qq1036053871/article/details/24396659

1、变量以$开头,不管是声明还是引用;

2、"."是字符串连接符,链接数字时该连接符后面必须有个空格;
3、"\"表示转义,同正则表达式中的一样;
4、''中的变量按普通字符串输出,""中的则输出字符串的值,从性能等方面考虑尽量用''处理字符串;
5、<<<是界定符,把它之间的字符串全部定义成一个变量,不管跨了多行;
<<<str
要定义的字符串
str;
上面要定义的字符串中所有的字符都是str变量的一部分,包括其中的分号,变量名为str。
6、复合类型有:数组、对象、空值和资源类型;
7、对于判断数据类型,用is_*函数代替gettype函数,因为后者可能在以后升级不是很好;
8、数据类型转换可以用java类似方法或者用settype函数;
9、常量前面没有美元符号($),define()定义参数,defined()判断是不是参数,constant()获得常量,由常量名得到其值;
10、php的预定义参数,这个在php的api都是可以查询的;
11、变量的作用域方法基本同java;
12、可变变量,$$a表示变量名为$a的值的变量;
13、系统预定义变量在php的web开发中经常使用,包括session和cookie相关的,基本都是放在数组中用相应的键值来操作;
14、or、and的优先级是最高的,也大于同样意思的||、&&的优先级,所以它们的替换可能会产生结果不一样;
15、===表示数值类型和大小都相等,!==指类型或数值不相等;
16、包含文件方式:
include()动态包含,外部文件有问题只警告;
require()静态包含,外部文件有问题会报错;
include_once()动态包含,同页面只包含一次;
require_once()静态包含,同页面只包含一次;
17、常用的输出的函数:echo,print。java有out对象的方法对应;
18、分支和循环:
switch-case循环支持字符串,其他同java;
foreach循环操作数组时操作的是数组的拷贝,不会改变原有的数组,遍历方式:
foreach(数组变量 as $value)//循环其值
foreach(数组变量 as $key => $value)//循环键和值对;
19、函数定义用fuction关键字,定义时不要制定返回类型,在代码中可以有返回类型,默认是传值,前面加&是传引用,可选参数必须在非可选参数右边,return语句可选,该语句尽量不要括号;
20、内置函数直接用函数名调用,类中的方法调用:实例=>方法();静态类中的调用:对象::方法()或属性或常量;
21、字符串处理同java类似,用于sql语句的处理有转义和还原函数;
22、数组处理:$数组名['键名']来初始化数组;也可以是array()函数创建数组,可以是从0开始的数字索引,也可以是键值对,也可以是一个空的数字,在以后进行增加;
23、php也支持命名空间,方式namespace my\name;
24、多维数组是数组的数组,php的数组能模拟java中集合的部分功能;
25、数组遍历:
foreach循环;
还可以用count()得到数组的长度然后用for方式循环;
list()语言结构循环仅仅用于默认数字索引的;
each()返回的是键值对;
while(list($key,$value)=each($array))
{
//这里是循环体;
}
26、数组的相关的函数同java;
27、web页面同jsp一样嵌入php脚本,提交的数据是在$_POST数组得到,与web相关的常量要牢记;
28、会话:
用session_start()启动会话,启动前浏览器不能有任何输出,启动后保存在常量数组$SESSION中,初始值是空的,可以向其中添加数据,如:$_SESSION['user']='www';用session_id()得到会话id;
29、删除会话:
单个删除:unset($_SESSION['user']);
删除多个会话:$_SESSION=array();
结束当前会话:session_destroy();
30、会话生命周期处理:
a、支持cookie的通过cookie支持会话传递:
session_set_cookie_params然后setcookie就可以设置过期时间;
b、不支持cookie的一般用db或file传值:
或用session_id()获得sessionid后用post或get方式传到下页。与a不同的是不同页面的sessionid是不同的,而a的不同页面的sessionid是相同的;
31、设置session相关:这些语句必须在session_start方法前。
session_save_path设置session保存的位置;
session_cache_limiter设置session在浏览器的缓存;
session_cache_expire设置session缓存过期时间;
32、将session保存到数据库
用session_set_save_handler,其参数是6个函数,与数据库相关的;
33、设置cookie用setcookie,读取用$__COOKIE[];
34、文件处理方式的没有看,不过估计和java的类似,只是其中代码稍有区别;
35、面向对象
类的定义同java,类的部分要在同一个php的脚本内,其属性也有作用域,不指定作用域可以用var进行修饰;
36、常量用const,直接用:类名::常量名 进行调用;
::作用域操作符,可以在不用实例化的情况下调用类的常量、变量和方法;
37、成员方法与函数的区别在于可以用关键字进行修饰;
38、类的构造器都用__constract方法,旧些的版本用与类同名的方法。
$变量名=new 类名([参数]);//实例化
$变量名->成员属性=值;//为属性赋值
$变量名->成员属性;//取得属性值
$变量名->成员方法;//使用方法
39、$this关键字同java,只能 用在类内,比它强大的是::作用域操作符,使用方法是 
关键字::变量/常量/方法;
40、构造函数__constract;析构函数__destruct;
41、接口和抽象类同java,使用和作用也类似;
42、常用的魔术方法和魔术常量都是是"__"开始的;
43、用mysql:一般用conn.php封装,然后用require到需要的页面:
$conn=mysql_pconnect("localhost","root","123456") or die(mysql_error());//打开连接
mysql_select_db("数据库名",$conn);//连接到指定的数据库
mysql_query("set names utf8");//设置字符编码
$sql="";
$R=mysql_query($sql) or die("Invalid query: " . mysql_error());//执行SQL语句返回结果集
while($v=mysql_fetch_array($R)){
echo "字段名".$v['title'];
}
mysql_free_result($R);//关闭结果集
mysql_close($conn);//关闭连接
44、用ADODB操作数据库,抽象了数据库的链接,可以方便跨数据库的处理,而PDO有官方支持,可能更好;
45、zend frament可能更好,这部分还要学;
0 0
原创粉丝点击