php语法同java语法的基本区别(实例项目需求,php才能熟)
php语法同java语法的基本区别(实例项目需求,php才能熟)
一、总结
看下面
二、PHP基本语法以及和Java的区别
.表示字符串相加
->同Java中的.
$作为变量的前缀,除此之外,变量名称定义规则同Java
参数传递和方法返回时传引用需要加前缀&
示例代码:
function f(&$a){}//方法参数值以引用形式传入
functioin & f(){}//方法返回值以引用形式返回
Java中反射调用方法对应PHP中的可变函数:var a="a";a="a";a();
PHP在定义变量时较Java强大一点,可以定义可变变量,也就是说在定义变量时,变量名本身可以用一个变量。
示例代码:
var a=”a”;vara=”a”;var a=”usea”;//a=”usea”;// a是一个使用a是一个使用a的值作为变量名的变量,也可以使用var {{a}=”use a”;
PHP的类在使用时必须先加载,否则会报错,不同于Java只要使用到类都会导致类自动加载。加载类的代码如下:
function my_autoloader ( class ) {
include ‘classes/’ .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 ();
三、PHP基础语法与java的差异(一)
个人觉得在学习语言时,可以通过比较来进行学习。由于长时间写java代码,对java的基本语法还算熟悉,现在转学php,就php中基本语法与java基本语法差异进行比较。
1. PHP是一种脚本语言,代码在服务器上执行,而结果以纯文本返回浏览器。
2.PHP能够运行在各种不同的平台中:比如windows,linux,MaxOS等。
3.PHP的脚本能够存放在文档的任何位置,且以 <?php 开头,以 ?> 结尾。
4.PHP的注释: PHP支持三种注释方式:
A.双斜杠 例如://这是申明一个变量
B.#符号 例如:#这是申明一个变量
C./**/ 例如:/*这是申明一个变量*/
java同样支持三种注释方式:
A.双斜杠 例如: //这是申明一个变量
B./**/ 例如: /*这是申明一个变量*/
C./***/ 例如: /**
*这是申明一个变量
*/
5.PHP中的大小写敏感问题: 在 PHP 中,所有用户定义的函数、类和关键词(例如 if、else、echo 等等)都对大小写不敏感,而变量则是大小写敏感的。
而在java中,所有函数名,关键字,类,变量等都是大小写敏感的。
6.PHP的变量申明:PHP类似于Javascript,两者都属于是若引用类型,申明的时候不用指明其类型。 而java则是强引用类型,申明时必须指明其类型。
PHP中申明变量的方式是:$X = 7; 注意: java和PHP变量的命名规则相同。
7.PHP中变量的作用域:
A. global (全局的): 只能在函数以外进行访问
B. Local(局部的): 只能在方法体重进行访问
C.static (静态的)
java中全局变量允许在方法中进行访问。
8.global关键字: 可以在函数体内使用global关键字对全局变量进行访问。
例如:
<span style="white-space:pre"> </span><pre name="code" class="html"><?php
$x=5;
$y=10; function myTest() {
global $x,$y;
$y=$x+$y;
} myTest();
echo $y; // 输出 15
?>
9.PHP中的echo和print的差别:
echo能够输出一个以上的字符串,速度比print稍快
print只能输出一个字符串,并返回1 (与之不同,java可以使用print输出一行语句)。
注意: PHP中print能够在双引号中输出变量,而java中双引号中不能输出变量。
例如:
<pre name="code" class="html">$txt2="W3School.com.cn";
echo "Study PHP at $txt2";
同样的也能输出数组中的任意元素:
echo "My car is a {$cars[0]}";
echo与print在有无括号的情况下都能使用。例如:echo与echo();
10.PHP中的类: 就其实现过程与java相同,都是用了关键字class ,但其中的数据声明却不相同。
<?php
class Car
{
var $color;
function Car($color="green") {
$this->color = $color;
}
function what_color() {
return $this->color;
}
}
?>
11.PHP中的字符串可以使用双引号或者是单引号表示。但是在java中只能使用双引号。
例如:“string" 'string'
php语法同java语法的基本区别(实例项目需求,php才能熟)的更多相关文章
- IT兄弟连 Java语法教程 Java语法基础 经典面试题
1.Java语言中有几种基本类型?分别是什么?请详细说明每种类型的范围以及所占的空间大小? Java语言中有8中基本类型,分别是代表整形的byte.short.int和long,代表浮点型的float ...
- Java语法糖设计
语法糖 Java语法糖系列,所以首先讲讲什么是语法糖.语法糖是一种几乎每种语言或多或少都提供过的一些方便程序员开发代码的语法,它只是编译器实现的一些小把戏罢了,编译期间以特定的字节码或者特定的方式对这 ...
- Java 语法清单
Java 语法清单 Java 语法清单翻译自 egek92 的 JavaCheatSheet,从属于笔者的 Java 入门与实践系列.时间仓促,笔者只是简单翻译了些标题与内容整理,支持原作者请前往 ...
- Java和C++的区别
这是一个Java语言和C++语言之间的比较. 目录 [隐藏] 1 设计目标 2 语言特性 2.1 语法 2.2 语义 2.3 资源管理 2.4 库 2.5 运行时 2.6 模板 vs. 泛型 2.7 ...
- php与java语法的区别
php与java语法的区别 个人觉得在学习语言时,可以通过比较来进行学习.由于长时间写java代码,对java的基本语法还算熟悉,现在转学php,就php中基本语法与java基本语法差异进行比较. 1 ...
- Java语法知识总结
一:java概述: 1991 年Sun公司的James Gosling等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒.PDA等的微处理器: 1994年将Oak语言更名为Java: ...
- 037 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 04 switch结构
037 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 04 switch结构 本文知识点:Java中的switch结构 选择结构分类 选择结构只有如下2种 ...
- 023 01 Android 零基础入门 01 Java基础语法 03 Java运算符 03 算术运算符之——自增自减运算符
023 01 Android 零基础入门 01 Java基础语法 03 Java运算符 03 算术运算符之--自增自减运算符 本文知识点:Java算术运算符中的自增自减运算符 自增自减运算符 之前我们 ...
- 006 01 Android 零基础入门 01 Java基础语法 01 Java初识 06 使用Eclipse开发Java程序
006 01 Android 零基础入门 01 Java基础语法 01 Java初识 06 使用Eclipse开发Java程序 Eclipse下创建程序 创建程序分为以下几个步骤: 1.首先是创建一个 ...
随机推荐
- Mahout的推荐系统
Mahout的推荐系统 什么是推荐系统 为什使用推荐系统 推荐系统中的算法 什么是推荐系统 为什么使用推荐系统? 促进厂商商品销售,帮助用户找到想要的商品 推荐系统无处不在,体现在生活的各个方面 图书 ...
- Linux / Windows应用方案不完全对照表
Linux/Windows应用方案不完全对照表 650) this.width=650;" border="0" src="http://img1.51cto. ...
- watch---周期性的方式执行给定的指令
watch命令以周期性的方式执行给定的指令,指令输出以全屏方式显示. 选项 -n:指定指令执行的间隔时间(秒): -d:高亮显示指令输出信息不同之处: -t:不显示标题.
- shutdown---系统关机
shutdown命令用来系统关机命令.shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作. 语法 shutdown(选项)(参数) 选项 -c:当执行“shutdown - ...
- Java设计模式23种(搞笑版) (转)
昨天做了一下支付宝的笔试题目被打击了,大量的逻辑推理和数学规律运算题目,其中还有问道Java设计模式的题目,一点都不知道,今天看到一份不错的介绍,非常好理解,作者是谁我没有办法考证,但是所有权 ...
- cocos2d-x-lua基础系列教程六(lua-table增删改查)
lua-table库 1.插入 table.insert () --假设没有设定位置.默认last位置 样例: myTable = { 1, 2, 3 } myTable.insert(myTable ...
- 谈谈Spine动画在产品中的应用
笔者介绍:姜雪伟,IT公司技术合伙人.IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D ...
- BZOJ3510首都(LCT)
Description 在X星球上有N个国家,每个国家占据着X星球的一座城市.由于国家之间是敌对关系,所以不同国家的两个城市是不会有公路相连的. X星球上战乱频发,如果A国打败了B国,那么B国将永远从 ...
- 【习题 7-9 UVA-1604】Cubic Eight-Puzzle
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] IDA* 保证这次移动的方格不和前一次重复. 然后加一个8数码的剪枝就行了. ->看看当前状态和目标状态有多少个地方是不一样的 ...
- SSO单点登录学习总结(3)—— 基于CAS实现单点登录实例
第一: 本demo在一个机器上实现(三个虚拟主机),来看SSO单点登录实例(我们可以布到多个机器上使用都是同一个道理的),一个服务器主机,和两个客户端虚拟主机 [html] view plaincop ...