gpt4 book ai didi

php - 如何从 PHP 调用 MySQL 交互式客户端?

转载 作者:可可西里 更新时间:2023-11-01 07:57:19 37 4
gpt4 key购买 nike

我想得到

`mysql -uroot`;

执行时进入MySQL交互客户端

$ mysql -uroot 

来自 shell。

如果 PHP 脚本存在于之后(或之前)也没关系,但我需要它来调用 MySQL 客户端。

我尝试过使用 proc_open(),当然还有 system()、exec() 和 passthru()。想知道是否有人有任何提示。

最佳答案

新的解决方案:

<?php
$descriptorspec = array(
0 => STDIN,
1 => STDOUT,
2 => STDERR
);
$process = proc_open('mysql -uroot', $descriptorspec, $pipes);

旧的:

保存制表符完成(如果你用 fread 而不是使用 fgets 读出字节,你可能会在那里得到它),这让你继续前进,还有很多需要调整的地方:

<?php
$descriptorspec = array(
0 => array("pty"),
1 => array("pty"),
2 => array("pty")
);
$process = proc_open('mysql -uroot', $descriptorspec, $pipes);
stream_set_blocking($pipes[1], 0);
stream_set_blocking($pipes[2], 0);
stream_set_blocking(STDIN,0);
do {
echo stream_get_contents($pipes[1]);
echo stream_get_contents($pipes[2]);
while($in = fgets(STDIN)) fwrite($pipes[0],$in);
} while (1);

关于php - 如何从 PHP 调用 MySQL 交互式客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6769313/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com