mysql_procedure_exec.php 681 B

12345678910111213141516171819202122232425262728
  1. <?php
  2. go(function () {
  3. $db = new Swoole\Coroutine\Mysql;
  4. $server = [
  5. 'host' => '127.0.0.1',
  6. 'user' => 'root',
  7. 'password' => 'root',
  8. 'database' => 'test'
  9. ];
  10. $clear = <<<SQL
  11. DROP PROCEDURE IF EXISTS `say`
  12. SQL;
  13. $procedure = <<<SQL
  14. CREATE DEFINER=`root`@`localhost` PROCEDURE `say`(content varchar(255))
  15. BEGIN
  16. SELECT concat('you said: \"', content, '\"');
  17. END
  18. SQL;
  19. $db->connect($server);
  20. if ($db->query($clear) && $db->query($procedure)) {
  21. $stmt = $db->prepare('CALL say(?)');
  22. $ret = $stmt->execute(['hello mysql!']);
  23. var_dump(current($ret[0])); // you said: "hello mysql!"
  24. }
  25. });