gpt4 book ai didi

php - 如何在 Linux 中使用 C 编程检查我的 php 和 pear 版本?

转载 作者:太空宇宙 更新时间:2023-11-04 11:09:27 25 4
gpt4 key购买 nike

如果可能,我不想使用字符串检测方法,即使用字符串函数检测给定字符串输出中的版本。如果不可能,请忽略我刚刚输入的内容。

有没有像 uname() 这样的函数,还是我必须编写自己的函数?如果是这样,请给我一个先机,或者你可以教我怎么做,让我的生活更轻松。谢谢!

顺便说一句,如果有帮助的话,我正在使用 dreamhost 共享服务器,是的,它安装了 gcc、php5.3 和 pear 1.9.4。

最佳答案

很抱歉让您失望,但这就是您需要做的。 popen 函数是您的 friend 。只需使用 popen 在读取模式下调用“pear -V”并将信息存储在缓冲区中,您可以轻松解析该缓冲区以隔离 pear 和 PHP 的版本号。它可以做得更干净,但它的要点是:

FILE *pfd;
char buffer[1024];
char *bp = buffer;
char tmp[100];
size_t len;
size_t line = 0;

if ((pfd = popen ("pear -V", "r")) == NULL) {
fprintf (stderr, "error: failed to open pipe.");
return 1;
}

while (fgets (tmp, 1023, pfd) != NULL && line < 2)
{
len = strlen (tmp);
strncpy (bp, tmp, len);
bp += len;
line++;
}

pclose (pfd);

printf ("\nbuffer:\n\n%s\n\n", buffer);

输出:

buffer:

PEAR Version: 1.9.4
PHP Version: 5.3.8

版本号的解析就交给你了。

关于php - 如何在 Linux 中使用 C 编程检查我的 php 和 pear 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23840771/

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