php 100问

通过比较的方式总结php基础知识点,这篇文章在以后的开发中不断完善,文章中难免有理解和书写错误,欢迎指正!

  1. echo、print、print_r、var_dump、var_export的区别

echo 语言结构非函数 可以用逗号分隔打印多个值 无返回值 可以打印整形、字符串;打印布尔型(ture是1,false是空)
print 语言结构非函数 只能打印一个值 有返回值 可以打印整形、字符串;打印布尔型(ture是1,false是空)
print_r 函数 可以打印整形、字符串、数组、对象;打印布尔型(true是1,false和null是空) 第二值为true可以赋值给php变量
var_dump 函数 可以用逗号分隔打印多个值 可以打印所有类型的值
var_export 函数 与var_dump类似,第二个值为ture返回值可以赋值给php变量

  1. require、include、require_once、include_once的区别

require 出错时产生 E_COMPILE_ERROR 级别的错误,导致脚本中止
include 出错时产生 E_WARNING 警告,脚本继续运行
require_once和include_once 只引入文件一次;

  1. php包含文件的寻找路径

按给出的参数路径寻找 –> 没有给出目录按照include_path制定目录寻找 –> include_path没有文件,则在脚本文件所在目录和当前工作目录寻找

  1. php数组合并 + 和array_merge区别

array_merge 字符串键名:后面的值覆盖前面的值;数字键名:后面的不会覆盖前面的,附加到后面;如果只有数字键名,会重建索引;
+字符串键名和数字键名都用前面的,后面的忽略;

  1. php new self() 和 new static()的区别

new static()是在PHP5.3版本中引入的新特性;new self()和new static()都是实列对象;
没有被继承两者无区别返回类对象;类被继承new self返回父类对象,new static返回子类对象;

<?php
class A {
    public static function get_self() {
        return new self();
    }

    public static function get_static() {
        return new static();
    }
}

class B extends A {}

echo get_class(B::get_self());  // A
echo get_class(B::get_static()); // B
echo get_class(A::get_self()); // A
echo get_class(A::get_static()); // A
  1. final关键词

PHP 5 新增了一个 final 关键字。如果父类中的方法被声明为 final,则子类无法覆盖该方法。如果一个类被声明为 final,则不能被继承

  1. 接口和抽象类的区别
  2. 魔术方法

__construct()、__destruct()、__call()、__get()、__set()、__isset()、__unset()、__sleep()、__wakeup()、__toSting()、__invoke()、__clone()

9.php自动加载__autoload和spl_autoload_register自动加载函数区别

spl_autoload_register可以多次注册加载,按顺序谁先注册谁先加载;__aotuload只能定义一次
spl_autoload_register可以被catch到错误,而__aotuload不能
spl_autoload_register注册的加载函数可以被spl_autoload_unregister掉

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值