可能重复:
PHP:HTTP还是HTTPS?一个人怎么说?
有没有办法来定义这个?
$ _SERVER superglogal不提供此类信息.即使只是它的['SERVER_PROTOCOL'] ......
在phpinfo其中显示ini设置的"主"和"本地"值.
我想比较它们以确定自脚本启动以来设置是否已更改.
获取本地值很容易:
<?php
$local = ini_get('setting');
Run Code Online (Sandbox Code Playgroud)
但我找不到任何描述如何获得主值的东西.
我注意到在"apache2handler"下的phpinfo中,它说:
虚拟服务器是的
那指的是什么?这是否意味着apache在虚拟(即非专用)主机上?它会说:
虚拟服务器号
?
感谢您的帮助.
我有一个非常奇怪的错误.我的httpd服务器一直工作正常,直到上周三,我卸载了MS SQL和Visual Studio C#.当我重新启动PC时,Ii发现环境变量PATH的某些部分消失了......几乎所有问题都恢复了,唯一一个无法调整的是我的httpd服务器...或PHP配置,我不知道知道.我已经卸载了Apache服务器,PHP和MySql并再次重新安装它们......我已经在其他PC上完成了很多次这样的事情,所以我确信它应该可行...但我遗漏了一些东西.
最糟糕的是,我在cmd"php -i"中获取的数据与我从页面info.php获取的数据不同,如下所示:
<?php
phpinfo();
?>
Run Code Online (Sandbox Code Playgroud)
该页面未显示有关mysqli配置的任何信息...
有谁能够帮我?我正在尝试避免格式化PC!
提前致谢
更新::::::::::::::::::::::::::用phpinfo我找到:
Configuration File (php.ini) Path C:\WINDOWS
Loaded Configuration File C:\PHP\php.ini
Run Code Online (Sandbox Code Playgroud)
在C:\ windows中没有php.ini文件.PHP还能在哪里找到其他配置?
是否可以使用php脚本获取php.ini文件的路径并将此路径保存到变量?我知道我可以调用phpinfo()找出路径,但是它打印了很多信息,我只需要php.ini文件的路径,根本没有输出.先感谢您.
我需要检查我的PHP应用程序安装程序中是否启用了register_argc_argv.
我写了一个代码,但它不起作用.它总是说它已被禁用,而它已在php.ini中启用:
//register_argc_argv
echo "<register_argc_argv>";
$ok=0;
$val="Disabled";
if(key_exists('PHP Core', $phpinfo))
{
if(key_exists('register_argc_argv', $phpinfo['PHP Core']))
{
if(is_array($phpinfo['coreKey']['register_argc_argv']))
{
if($phpinfo['coreKey']['register_argc_argv'][0]=="On")
{
$ok=1;
$val="Enabled";
}
}
else
{
if($phpinfo['coreKey']['register_argc_argv']=="On")
{
$ok=1;
$val="Enabled";
}
}
}
}
echo "<val>$val</val><ok>$ok</ok>";
echo "</register_argc_argv>\n";
Run Code Online (Sandbox Code Playgroud) 我刚刚安装了WAMP,我可以访问localhost并获取phpinfo()输出.
但是,虽然我可以看到_SERVER ['REQUEST_METHOD']设置为GET,但我正在尝试使用以下PHP:
if ($_SERVER["REQUEST_METHOD"]=="POST") {
...
Run Code Online (Sandbox Code Playgroud)
但它会产生这个错误:
PHP注意:未定义的索引:第40行的C:\ ...\test.php中的REQUEST_METHOD
使用Komodo在第40行停止并检查$ _SERVER - 它在数组中根本没有'REQUEST_METHOD' - 甚至没有GET.
有人有主意吗?我是否必须启用POST,REQUEST_METHOD?
为什么我可以在phpinfo中看到REQUEST_METHOD = GET但在PHP脚本中看不到.
我也试过这个:
<?php
ob_start();
phpinfo();
$info = ob_get_contents();
ob_end_clean();
?>
Run Code Online (Sandbox Code Playgroud)
我生成一些phpinfo(在浏览器中使用localhost /?phpinfo = 1查看)但不是全部.为什么不?
我使用的是 OS X 10.9(不过,它在 10.8 中是一样的)
我正在尝试将 display_errors 设置为 On 但无法弄清楚。我在 /etc 中没有 php.ini 文件,所以我复制了 /etc/php.ini.default cp /etc/php.ini.default /etc/php.ini。
然后我进入 /etc/php.ini 并取消注释该行display_errors并将其设置为 On - display_errors=On。保存文件并转到phpinfo().
对于“配置文件(php.ini)”路径,它显示“/etc”,对于“加载的配置文件”,它显示“/etc/php.ini”,所以我认为这意味着它使用了正确的php.ini文件,对吗?
但是,当我在 phpinfo() 中向下滚动时,对于本地值和主值,它都将“display_errors”显示为关闭。
我究竟做错了什么?还有其他地方需要打开 display_errors 吗?我正在使用 PHP 5.4.17
编辑:忘了提到我已经重新启动了 apache 几次sudo apachectl restart,但仍然没有变化。
此外,我发现奇怪的是,在我将 php.ini.default 复制到 /etc/php.ini 之前,php 可能使用了一些默认的 php.ini 文件,但 display_errors 仍然设置为 Off。不是默认开启吗?
我想嵌入phpinfo()管理页面。保持网站导航和样式。但是,在函数中应用的样式与站点自己的样式(破坏导航样式)混在一起。
问题:如何phpinfo()避免影响我嵌入的页面?
我在Windows 10家庭单语言64位操作系统上运行的笔记本电脑上使用PHP 7.2.8
我已经使用最新版本的XAMPP安装程序在笔记本电脑上安装了PHP 7.2.8。
我从PHP手册的phpinfo()函数描述中看到以下文本
输出有关PHP当前状态的大量信息。这包括有关PHP编译选项和扩展的信息,......
从上述《 PHP手册》中的文字中,我没有得到“ PHP编译选项”的确切含义。
我phpinfo();通过在笔记本电脑上运行来检查输出。
我只能在输出中看到与编译相关的一行,如下所示:
编译器MSVC15(Visual C ++ 2017)
上一行是不是PHP手册中提到的“ PHP编译选项”或“ PHP编译选项”之外的其他内容?
如果“ PHP编译选项”的意思与我上面提到的相同,那么为什么输出中不多于一个编译选项phpinfo();?
我正在使用PHP 7.2.8
我执行以下代码:
<?php
phpinfo(2 | 8); //Bitwise OR operator is used
?>
Run Code Online (Sandbox Code Playgroud)
上面的代码工作正常,并给了我预期的结果。
然后,我尝试将数值常量按位值作为参数传递,即将数字2和8的二进制等效项作为参数传递。请看下面的代码:
<?php
phpinfo(00000010 | 1000000); //Bitwise OR operator is used
?>
Run Code Online (Sandbox Code Playgroud)
我得到了上述代码的意外输出(即,第二个代码中传递了数字常量的按位值)。
为什么这样?
请参阅此链接,以获取有关要传递给phpinfo()函数的参数的描述以及要传递的每个数字常量的含义的信息。
请让我知道我在哪里出错了?我只是想按照手册中的描述执行代码。
谢谢。