PHP与Java语法上的简单对比

最近一朋友准备从java转PHP,帮她写个简单的PHP入门,简单的讲一下java与php的不同。

PS. ueditor实在不会用- -,凑合着看吧

 

PHP

Java

文件格式

<% %>或是<%php %>把代码包含在里面

保存为.php文件

直接书写

保存为.java文件

语言类型

即时编译执行

静态编译执行

注释

PHP独有

# 这也是单行注释

与java相同点:

// 这是单行注释

/*

这是多行注释块

它横跨了

多行

*/



变量命名

PHP独有

变量以 $ 符号开头,其后是变量的名称

与java相同:

变量名称必须以字母或下划线开头

变量名称不能以数字开头

变量名称只能包含字母数字字符和下划线(A-z0-9 以及 _

变量名称对大小写敏感($y  $Y 是两个不同的变量)



变量声明

php属于弱类型,需要的时候直接使用,不用声明

function test(){

 $x = 10;

 echo $x;

}

详细的使用方式

http://www.w3school.com.cn/php/php_variables.asp

强类型,需要声明类型和初始化

public void test(){

 int x =10;

 system.out.println(x);

}

简单的输出

echo $x;

或是

var_dump($x)

system.out.println(x);

 

变量类型

字符串、整数、浮点数、逻辑、数组、对象、NULL

虽然PHP在变量声明不用指明类型,但是在语言的机制上还是有这些类型



普通数组

$goods = array(“商品1”,”商品2”);

使用

$goods[0],得到商品1”

获得数组长度

echo count($goods);

String[] goods = new String[]{
商品1”,”商品2”}

使用

goods[0] ,得到商品1”

获得数组长度

system.out.println(goods.length);

关联数组

$goodsInfo = array(“id” =>”xxxx”,”name” =>”商品1”,”price”=>”20.00”);

使用方法:

$goodsInfo[“id”];

 

java中没有关联数组,想要实现类似功能只能使用map

Map<String,String> goodsInfo = new HashMap<String,String>();

goodsInfo.put(“id”,”xxxx”);

goodsInfo.put(“name”,”商品1”);

goodsInfo.put(“price”,”20.00”);

使用方法:

goodsInfo.get(“id”);

关联数组遍历

foreach($goodsInfo as $key => $val){

 echo “商品属性:”.$key.”, 值:”.$val;

 echo “<br/>”;

}

输出结果:

商品属性:id, 值:xxxx

……以下省略

for(String key : goodsInfo.keySet()){

 String str = String.format(“商品属性:%s, 值:%s”,

key,goodsInfo.get(key));

 system.out.println(str);

}

输出结果:

商品属性:id, 值:xxxx

……以下省略

运算符

太多,懒得写,自己看

http://www.w3school.com.cn/php/php_operators.asp

 

逻辑条件

If

If else

If elseif else

Switch

For

While

这几个都一样,没啥好说的,说一个php中有,而java中没有的

Foreach

这个和js的差不多,只适用于数组,并用于遍历数组中的每个键/值对。

对于普通数组

foreach ($array as $value) {

  直接用$value

}

对于关联数组,例子参考上面关联数组里的

foreach ($array as $key=>$value) {

  直接用$key$value

}

函数

js里的一样,这里就不写和java的区别了

内置的全局变量

PHP主要运用在web中,所以内置了许多全局变量,和java中使用request获取的一样的,具体解释看网页

http://www.w3school.com.cn/php/php_superglobals.asp


推荐书籍:《细说PHP》

推荐网站:php100

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。