【PHP】PHP基础知识与C++、Java等C家族的重点区别

简介: 【PHP】PHP基础知识与C++、Java等C家族的重点区别

刚刚接触PHP,看着PHP的基础知识,发现还是有一些地方与Java有比较大的区别。


然后就想着写一写基础知识的一点不同,方便记忆与区分。


本篇博客适宜人群:

对Java基础知识有着一定的了解(最好是已经深入学习Java的人,否则有时候,不同计算机语言之间的语法会把你弄懵逼的)。

以及刚学习PHP的人。


在这里,我只列出PHP的基础知识是哪样的,Java的不列出。


输出字符串


PHP的输出前面都是有着:echo。


<?php
  echo print 'Hello Word!';
  echo "<br/>";
?>
<?php
  echo printf("这是我的第%d个程序<br/><br/>",2);
?>


数据类型


PHP有两种特殊类型、

1、NULL(Null)

2、resource(资源)

(前面的是数据类型,括号内的是中文名称)


PHP中:

Array-也就是数组。

3中定义方式:


<?php
  $array = array("a","b","c",12,"d");
  print_r($array);
  echo "<br/><br/>";
?>
<?php
  $array = array(
    "key1" => "a",
    "key2" => 12,
    "key3" => "b",
  );
  print_r($array);
  echo "<br/><br/>";
  //自PHP5.4起,定义方式改为:
  $array = [
    "key1" => "a",
    "key2" => 12,
    //"key3" => "b",
    "key3" => "b"//最后写不写逗号都一样的
  ];
  print_r($array);
  echo "<br/><br/>";
?>



NULL类型的变量唯一的可能值就是NULL,而且不区分大小写!

用来表示一个变量没有值!


Object对象-调用对象中的函数


<?php
  class hello{
    function do_print(){
        echo "print";
    }
  }
  $a = new hello;//new 对象
  $a->do_print();//调用$a中函数
  echo "<br/><br/>";
?>


变量


PHP表示一个变量的方法是:使用符号$开头,后跟变量名称。

PHP是弱类型语言。


<?php
  $a = 12;
  $b = "abc";
?>


引用赋值


PHP中:


<?php
    $num1=5;
    $num2=&$num1;
    $num2=10;
    echo $num1;//输出10
?>


局部变量与全局变量


PHP中:

局部变量只能在被定义的函数内使用,在该被定义的函数之外无法访问该变量。

全局变量指在函数的外部被定义,其只能在函数外部使用!


也就是说,全局变量与局部变量是分开的!


不过我们还是有一种方法可以在函数内部访问全局变量。

我们可以在函数内部也定义同样的变量,只是我们需要在变量前面加上关键字 global 。

示例如下:


<?php
    $sun=20;
    function example(){
        global $sum;
        $num1 = 10;
        $num2 = $num1 * 2;
        $sum = $num1+$num2; 
    }
    example();
    echo $sum; //输出30
?>


常量


PHP中:

常量需要使用define()函数进行设置。

示例:


<?php
    define("FIRST","abc");
    echo FIRST;
?>


define()函数有3个参数。

1.定义常量名称

2.定义常量的值

3.定义了常量名称是否区分大小写,该参数可选,默认是false.


运算符


PHP中:

比较运算符 “===”

三个等于表示是否完全相同。

也就是$a等于$b,而且它们的数据类型相同。为TRUE


“!==”非全等于

也就是$a 不等于$b,或它们的数据类型不相同。为TRUE


“<>”不等于,类似”!=”


逻辑运算符


PHP中

逻辑异或 “xor”


$a xor $b  

如果$a或$b任一为true,但不同时为true。结果为true。

也就是$a与$b值不同时,结果为true。

1

2

3

“.”运算符


PHP中

连接字符串的运算符、


数组运算符


PHP中

“===”全等


如果$a和$b拥有相同的键/值对,且顺序相同,类型相同,则返回true、


“!==”不全等


与 === 相对


条件判断语句


PHP中

elseif可以写在一起、


elseif和else if一样的


如有错误或者补充,欢迎在评论区指正,谢谢,我会继续编辑,以及加上补充者ID。


目录
相关文章
|
9天前
|
Java
Java代码解释++i和i++的五个主要区别
本文介绍了前缀递增(++i)和后缀递增(i++)的区别。两者在独立语句中无差异,但在赋值表达式中,i++ 返回原值,++i 返回新值;在复杂表达式中计算顺序不同;在循环中虽结果相同但使用方式有别。最后通过 `Counter` 类模拟了两者的内部实现原理。
Java代码解释++i和i++的五个主要区别
WK
|
11天前
|
安全 Java 编译器
C++和Java哪个更好用
C++和Java各具优势,选择取决于项目需求、开发者偏好及目标平台特性。C++性能出色,适合游戏、实时系统等;Java平台独立性强,适合跨平台、安全敏感应用。C++提供硬件访问和灵活编程范式,Java有自动内存管理和丰富库支持。两者各有千秋,需根据具体需求选择。
WK
9 1
|
16天前
|
IDE Java 程序员
C++ 程序员的 Java 指南
一个 C++ 程序员自己总结的 Java 学习中应该注意的点。
19 5
|
18天前
|
存储 安全 编译器
在 C++中,引用和指针的区别
在C++中,引用和指针都是用于间接访问对象的工具,但它们有显著区别。引用是对象的别名,必须在定义时初始化且不可重新绑定;指针是一个变量,可以指向不同对象,也可为空。引用更安全,指针更灵活。
|
17天前
|
Java
通过Java代码解释成员变量(实例变量)和局部变量的区别
本文通过一个Java示例,详细解释了成员变量(实例变量)和局部变量的区别。成员变量属于类的一部分,每个对象有独立的副本;局部变量则在方法或代码块内部声明,作用范围仅限于此。示例代码展示了如何在类中声明和使用这两种变量。
|
18天前
|
存储 缓存 安全
在Java的Map家族中,HashMap和TreeMap各具特色
【10月更文挑战第19天】在Java的Map家族中,HashMap和TreeMap各具特色。HashMap基于哈希表实现,提供O(1)时间复杂度的高效操作,适合性能要求高的场景;TreeMap基于红黑树,提供O(log n)时间复杂度的有序操作,适合需要排序和范围查询的场景。两者在不同需求下各有优势,选择时需根据具体应用场景权衡。
23 2
|
29天前
|
Java
Java基础之 JDK8 HashMap 源码分析(中间写出与JDK7的区别)
这篇文章详细分析了Java中HashMap的源码,包括JDK8与JDK7的区别、构造函数、put和get方法的实现,以及位运算法的应用,并讨论了JDK8中的优化,如链表转红黑树的阈值和扩容机制。
20 1
WK
|
10天前
|
开发框架 移动开发 Java
C++和Java哪个更适合开发移动应用
本文对比了C++和Java在移动应用开发中的优劣,从市场需求、学习难度、开发效率、跨平台性和应用领域等方面进行了详细分析。Java在Android开发中占据优势,而C++则适合对性能要求较高的场景。选择应根据具体需求和个人偏好综合考虑。
WK
20 0
WK
|
11天前
|
安全 Java 编译器
C++和Java哪个更适合开发web网站
在Web开发领域,C++和Java各具优势。C++以其高性能、低级控制和跨平台性著称,适用于需要高吞吐量和低延迟的场景,如实时交易系统和在线游戏服务器。Java则凭借其跨平台性、丰富的生态系统和强大的安全性,广泛应用于企业级Web开发,如企业管理系统和电子商务平台。选择时需根据项目需求和技术储备综合考虑。
WK
12 0
|
20天前
|
Java
Java代码解释静态代理和动态代理的区别
### 静态代理与动态代理简介 **静态代理**:代理类在编译时已确定,目标对象和代理对象都实现同一接口。代理类包含对目标对象的引用,并在调用方法时添加额外操作。 **动态代理**:利用Java反射机制在运行时生成代理类,更加灵活。通过`Proxy`类和`InvocationHandler`接口实现,无需提前知道接口的具体实现细节。 示例代码展示了两种代理方式的实现,静态代理需要手动创建代理对象,而动态代理通过反射机制自动创建。