>  기사  >  백엔드 개발  >  PHP基本语法以及和Java的区别

PHP基本语法以及和Java的区别

WBOY
WBOY원래의
2016-06-23 13:31:34927검색

.表示字符串相加

->同Java中的.

$作为变量的前缀,除此之外,变量名称定义规则同Java

参数传递和方法返回时传引用需要加前缀&

示例代码:
function f(&$a){}//方法参数值以引用形式传入
functioin & f(){}//方法返回值以引用形式返回

Java中反射调用方法对应PHP中的可变函数:var a="a"; a();

PHP在定义变量时较Java强大一点,可以定义可变变量,也就是说在定义变量时,变量名本身可以用一个变量。

示例代码:
var a=”a”;var a=”usea”;// a是一个使用 a的值作为变量名的变量,也可以使用var {a}=”use a”;

PHP的类在使用时必须先加载,否则会报错,不同于Java只要使用到类都会导致类自动加载。加载类的代码如下:

function my_autoloader ( class ) {  
    include  ‘classes/’  .class . ‘.class.php’ ;
}
spl_autoload_register ( ‘my_autoloader’ );

PHP没有多线程

PHP常量的定义不是使用final而是用defined()函数。示例:define ( “CONSTANT” , “Hello world.” );

// PHP 5.3.0 后还支持这种方式定义:const CONSTANT = ‘Hello World’ ;

PHP调用父类的构造函数不是使用super(),而是parent::__construct()。

PHP有析构函数,类似Java的finalize方法。例如:function __destruct () {print “Destroying “;}

PHP使用this表示当对象,这点同Java的this

PHP使用parent表示父类,这点同Java的super

PHP使用self表示当前类,Java没有这个关键字,也不需要使用表示类。

PHP在调用本类中的静态变量和方法时,必须使用self关键字和::,示例代码:

class A(){
public static function foo () {echo “foo”;}
self :: foo ();
}
如果不在本类中则直接使用类名:
class A(){
public static function foo () {echo “foo”;}
}
A :: foo ();

未完待续。。。

版权声明:本文为博主原创文章,未经博主允许不得转载。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.