gpt4 book ai didi

PHP list+explode VS substr+strpos - 哪个更有效率?

转载 作者:可可西里 更新时间:2023-11-01 12:25:24 27 4
gpt4 key购买 nike

示例文本:

$text = 'Administration\Controller\UserController::Save';

任务 - 在::之前提取所有内容

选项 1:

list($module) = explode('::',$text);

选项 2:

$module = substr($text, 0, strpos($text, '::');

哪个选项更有效?

最佳答案

我进行了测试,似乎第一个解决方案更快。这是测试它的代码:

function microtime_float()
{
list($usec, $sec) = explode(" ", microtime());
return ((float)$usec + (float)$sec);
}

function solution1($text)
{
for($i = 0; $i < 10000; $i++)
list($module) = explode('::',$text);
}

function solution2($text)
{
for($i = 0; $i < 10000; $i++)
$module = substr($text, 0, strpos($text, '::'));
}

$text = 'Administration\Controller\UserController::Save';

$time_start = microtime_float();

solution1($text);

$time_end = microtime_float();
$time = $time_end - $time_start;

echo "Did solution1 in $time seconds.\n";

$time_start = microtime_float();

solution2($text);

$time_end = microtime_float();
$time = $time_end - $time_start;

echo "Did solution2 in $time seconds.\n";

测试 1:在 0.19701099395752 秒内执行了 solution1。在 0.38502216339111 秒内完成了 solution2。

测试 2:在 0.1990110874176 秒内执行了 solution1。在 0.37402105331421 秒内完成了 solution2。

测试 3:在 0.19801092147827 秒内执行了 solution1。在 0.37002205848694 秒内完成了 solution2。

关于PHP list+explode VS substr+strpos - 哪个更有效率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18826797/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com