PHP开发日志 ━━ 不同方法判断某个数组中是否存在指定的键名,测试哪种方法效率高

我们可以用isset($arr['a']) 或者 array_key_exists('a', $arr) 来判断'a'键名是否存在与$arr数组。

那么这两种方式哪个运行速度快呢?

在这里插入图片描述

不多废话了,现在我们写一段代码来测试一下:

$array = ['a' => 1, 'b' => 2, 'c' => 3];

$start = microtime(true);

for ($i = 0; $i < 1000000; $i++) {
   
    isset($array['a']);
}

$end = microtime(true);

$time_isset = $end - $start;

$start = microtime(true);

for ($i = 0; $i < 1000000; $i++) {
   
    array_key_exists('a', $array);
}

$end = microtime(true);

$time_array_key_exists = $end - $start;

echo $time_isset . ' - ' . $time_array_key_exists;

结论是isset()更胜一筹。

0.01655101776123 - 0.019193172454834

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-11 07:30:06       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-11 07:30:06       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-11 07:30:06       87 阅读
  4. Python语言-面向对象

    2024-01-11 07:30:06       96 阅读

热门阅读

  1. Hive事务表转换为非事务表

    2024-01-11 07:30:06       55 阅读
  2. VsCode 安装Copilot过程讲解

    2024-01-11 07:30:06       78 阅读
  3. 《Git学习笔记》

    2024-01-11 07:30:06       54 阅读
  4. Rust 工作空间

    2024-01-11 07:30:06       49 阅读
  5. kafka连接失败时springboot项目启动停机问题

    2024-01-11 07:30:06       59 阅读
  6. 网站优化之压缩页面输出

    2024-01-11 07:30:06       48 阅读
  7. Kotlin 1.7.0 beta发布,改进构建器类型推断

    2024-01-11 07:30:06       56 阅读
  8. React16源码: React中的setState和forceUpdate源码实现

    2024-01-11 07:30:06       59 阅读