使用PHP脚本的最快方法是什么

时间:2017-09-24 16:53:50

标签: php mysql

我在使用PHP服务器(制作游戏)的最快捷方式方面遇到了一些问题。

这是我在PHP中的功能:

function getSomeInfoByDataId($id) {
    $arr = mysql_fetch_array(mysql_query("SELECT * FROM maps WHERE id='".$id."' LIMIT 1;"));
    if(!empty($arr)) {
        return $arr;
    }
 }
//$user - is array with all details from loged-in user

问题: 什么是加速PHP服务器的最佳和最快的方法?

方式1。

$myArray = array(
    'map_id' => getSomeInfoByDataId($user['map'])['id'],
    'map_name' => getSomeInfoByDataId($user['map'])['name'],
    'map_pvp' => getSomeInfoByDataId($user['map'])['pvp'],
    'map_img' => getSomeInfoByDataId($user['map'])['img']
);

方式2。

$mapInfo = getSomeInfoByDataId($user['map']);
$myArray = array(
    'map_id' => $mapInfo['id'],
    'map_name' => $mapInfo['name'],
    'map_pvp' => $mapInfo['pvp'],
    'map_img' => $mapInfo['img']
);

对不起,如果这个问题有点疯狂,但对我来说非常重要。

1 个答案:

答案 0 :(得分:0)

选项1让您调用数据库四次,以获得第一次调用时获得的完全相同的信息。

从逻辑上思考,如何做同样的事情比做一次快四倍?

选项2确实是最快的,但是,您甚至不需要将结果存储在$myArray中,因为您已在$mapInfo中拥有该数据。

$myArray带来的唯一好处就是拥有更容易阅读的#34;每个值的键,键已经足够容易阅读。

编辑:正如评论中所说,您正在使用不推荐使用的函数来调用您的数据库。请查看使用PDO prepared statements以避免SQL注入。