Должен ли я освободить MySQL результат после его сохранения? - PullRequest
2 голосов
/ 25 июня 2010

Мне было интересно, нужно ли мне вызывать $stmt->free_result(), после того как я сохранил его результат с $stmt->store_result()?Могу ли я просто позвонить $stmt->close() в конце?

Причина, по которой я спрашиваю это, заключается в том, что когда я звоню $stmt->num_rows, я звоню $stmt->store_result(), как здесь сказано: http://www.php.net/manual/en/mysqli-stmt.num-rows.php, но они не называют $stmt->free_result() в своем примере.Тем не менее, на $stmt->store_result() они делают: http://www.php.net/manual/en/mysqli-stmt.store-result.php.

Ответы [ 2 ]

3 голосов
/ 25 июня 2010

У вас нет , чтобы явно освободить результат, но вы можете, если хотите.Если вы этого не сделаете, результат будет освобожден, когда дескриптор оператора выйдет из области видимости.

1 голос
/ 25 июня 2010

PHP довольно снисходителен, освобождая ресурсы.Любые ресурсы, используемые вашим сценарием, такие как соединения SQL, будут освобождены при выходе из сценария.Хотя это хорошая практика программирования, если у вас много одновременно работающих пользователей, разница в производительности будет очень небольшой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...