exécutant des fichiers mysql * .sql dans php
Lors de la création de bases de données de site Web, vous pouvez rencontrer des scénarios où vous devez exécuter . Fichiers SQL de PHP pour automatiser la génération de sites. Alors que zend_framework peut être bénéfique, exécuter . Les fichiers SQL directement à partir de PHP peuvent être difficiles en raison des incohérences dans les instructions SQL.
Solution: Utilisation de shell_exec ()
L'approche recommandée consiste à invoquer l'outil MySQL à l'aide de shell_exec () pour exécuter votre script * .sql. Voici un exemple:
$command = 'mysql' . ' --host=' . $vals['db_host'] . ' --user=' . $vals['db_user'] . ' --password=' . $vals['db_pass'] . ' --database=' . $vals['db_name'] . ' --execute="SOURCE ' . $script_path ;
Cette commande crée une commande d'exécution mysql avec les paramètres nécessaires pour exécuter le fichier * .sql spécifié dans $ script_path.
Différences entre shell_exec () et exec ()
]Bien que les deux fonctions exécutent des commandes externes, elles ont des distinctions. shell_exec () capture la sortie de la commande et le renvoie sous forme de chaîne, tandis que Exec () renvoie l'état de l'exécution de la commande. Dans ce cas, shell_exec () est préféré pour obtenir la sortie de la commande mySQL. Les paramètres nécessaires (db_host, db_user, db_pass, db_name) et vous avez suffisamment d'autorisations pour exécuter le script. De plus, utilisez l'option --execute = "source ..." au lieu de
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3