Dois-je vraiment besoin de le faire mysql_close()
Dois-je vraiment besoin de le faire mysql_close()? Pourquoi ou pourquoi pas?
Est-il un déclencheur qui ferme la un lien après mysql_connect même si je ne fais pas mysql_close?
- Double Possible de ferme la connexion mysql important?
Vous devez vous connecter pour publier un commentaire.
Dans la plupart des cas, l'appel de
mysql_close
ne fera aucune différence, en terme de performance. Mais c'est toujours une bonne pratique afin de fermer des ressources (les descripteurs de fichiers, sockets, connexions de base de données, etc.) que votre programme n'utilise plus.Cela est particulièrement vrai si vous faites quelque chose qui peut prendre quelques secondes - par exemple, la lecture et l'analyse des données à partir d'une API REST. Depuis l'appel de l'API est d'aller sur la ligne, négatif des conditions de réseau peut causer votre script pour bloquer pendant plusieurs secondes. Dans ce cas, le moment approprié pour ouvrir la connexion de base de données est après le RESTE de l'appel est terminé et analysée.
Pour résumer ma réponse, les deux grandes règles sont les suivantes:
Selon la documentation:
Personnellement, j'aime toujours m'assurer de manière affectée près tout ce que j'ai ouvert, mais il n'est pas nécessaire.
L'avantage est que vous pouvez libérer la connexion à la base de données, ainsi que les ressources correspondantes dans la base de données du serveur, plus tôt que le PHP demande de nettoyage ferait.
Disons, par exemple, vous interrogez toutes les données de votre demande aura besoin dans les premiers 20 millièmes de la demande. Mais alors votre code PHP passe un autre de 80 millisecondes code en cours d'exécution et de mise en forme les résultats. Ce qui signifie que 80% du temps, l'application est tenue d'ouvrir une connexion db sans avoir besoin de, et de en moyenne, de 8 sur 10 connexion des fils sur le serveur de base de données sont en veille et l'utilisation des ressources.
Le manuel dit:
Donc, non, pas vraiment. Il est utile de libérer des ressources avant de tenter une opération potentiellement consomme de grandes quantités de ressources, mais il ne sera probablement pas faire une grande différence.
Normalement, il n'y a aucun avantage à la fermeture de la liaison de vous-même, comme il sera automatiquement fermé.
Je ne peux penser à un couple d'avantages
Si votre script a beaucoup de traitement à faire, après il a fini d'utiliser la base de données, la fermeture de la liaison de base de données prématurément peut aider à libérer un peu de mémoire et d'autres ressources (comme des connexions MySQL), tandis que votre script continue avec d'autres choses. C'est très peu probable d'être un problème dans la plupart des scripts, puisque la plupart des scripts pour mettre fin assez rapidement après il a fini avec la connexion à la base de toute façon, et l'heure de la connexion est maintenue ouverte avant que le script PHP se termine sera relativement court.
De l'exhaustivité et de la propreté du code. Il peut vous donner un bon sentiment, et est généralement un bon code de l'hygiène de fermer ce que vous avez ouvert, même si, dans ce cas il n'est pas techniquement nécessaire.