PHP缓慢与mysqli

时间:2013-03-19 22:34:03

标签: php mysql mysqli

我(希望)这是一个非常简单的问题,关于PHP / MySQL错过了什么。首先,计算机是Windows 7计算机并运行XAMPP(Apache,PHP,MySQL等) - 没有Windows / IIS等。

机器很快,PHP和PHP MySQL运行速度超快。但是,有一台机器可以使用PHP和它的方式。 MySQL是某种延迟 - 具体来说,它基本上是3秒。实际上,如果你删除了所有代码,那么除了像这样建立连接之外,它还没有做任何事情:

$db = new mysqli($hostname, $username, $password, $database);

...并且没有任何查询或任何东西 - 只需要设置对象的PHP行,它需要3秒钟。

相反,你注释掉这一行,页面是即时的。

无论如何想到为什么会这样?它看起来并没有什么不对,确切地说,只是以这种3秒钟的方式设置我们想要摆脱它。谢谢!

2 个答案:

答案 0 :(得分:10)

如果这是在本地托管并且您使用的是localhost,那么这将是您的问题,请尝试使用

$db = new mysqli('127.0.0.1', $username, $password, $database);

这是因为MYSQLI如何处理localhost和IPV6

答案 1 :(得分:-2)

$orig = $_GET['orig'];
$des_id = $_GET['des_id'];
try {
    $dbuser = "kim";
    $dbpass = "kim";
    $conn = new  PDO('mysql:host=localhost;dbname=destination', $dbuser, $dbpass);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);    
    $stmt = $conn->prepare("SELECT pl_id FROM view_places WHERE name = :name LIMIT 1");

    $stmt->bindParam(':name',$orig); 
    $stmt->execute();
    $result_1 = $stmt -> fetch();
    $res1 = $result_1["pl_id"];  

    $stmt->bindParam(':name', $des_id); 
    $stmt->execute(); 
    $result_2 = $stmt -> fetch(); 
        $res2 = $result_2["pl_id"];  
        echo   'origin_number:'.$res1. ', '.'destination_id:'.$res2;
    }   catch(PDOException $e) {
            echo 'ERROR: ' . $e->getMessage();
    }