标签: php-ini

增加最大上传文件大小WordPress多站点

我正在尝试增加WordPress多站点安装的最大文件大小(目前为1MB).我尝试过很多东西都无济于事.我试过的东西:

将这些添加到我的主机php.ini文件:

memory_limit = 300M
post_max_size = 32M
upload_max_filesize = 32M
Run Code Online (Sandbox Code Playgroud)

将这些添加到主题中的functions.php文件中:

@ini_set('upload_max_size' , '32M');
@ini_set('post_max_size', '32M');
@ini_set('max_execution_time', '300');
Run Code Online (Sandbox Code Playgroud)

将这些添加到.htaccess文件中:

php_value upload_max_filesize 32M
php_value post_max_size 32M
Run Code Online (Sandbox Code Playgroud)

我甚至尝试检查wp-includes/default-constants.php.

有趣的是,我在同一台服务器上有另一个WordPress安装(不是多站点)似乎工作正常(最大上传有32MB).任何想法接下来要尝试什么?

谢谢.

php wordpress php-ini

8
推荐指数
1
解决办法
9184
查看次数

php的扩展.so文件在哪里?

我打开了一些像mysqli.ini,mysql.ini, pdo_mysql.ini这样的ini文件.在这些文件中,为这些文件添加了.so扩展名.我想知道这些.so文件的存储位置.

在mysqli.ini文件里面

; configuration for php MySQL module
; priority=20
extension=mysqli.so
Run Code Online (Sandbox Code Playgroud)

在mysql.ini文件里面

; configuration for php MySQL module
; priority=20
extension=mysql.so
Run Code Online (Sandbox Code Playgroud)

在pdo_mysql.ini文件中

; configuration for php MySQL module
; priority=20
extension=pdo_mysql.so
Run Code Online (Sandbox Code Playgroud)

php mysql mysqli php-ini .so

8
推荐指数
2
解决办法
1万
查看次数

使用符号@与内置函数ini_set在PHP中有什么区别?

在我项目的一个配置设置中,我观察到文件开头的两行:

@ini_set('memory_limit', '-1');
@set_time_limit(0);
Run Code Online (Sandbox Code Playgroud)

我怀疑上面两行代码和下面的代码行有什么区别?

ini_set('memory_limit', '-1');
set_time_limit(0);
Run Code Online (Sandbox Code Playgroud)

在PHP中为@符号添加前缀的意图是什么?

请详细说明并回答问题.

提前致谢.

php settings ini-set php-ini

7
推荐指数
1
解决办法
1609
查看次数

对 php.ini 的更改未反映在 php 信息中

这一直困扰着我多年,在搜索了大量答案并尝试了建议之后,我无法在我的本地主机设置或相关的 phpMyAdmin 最大文件大小上更改 php_info() 值。

所以我找到了 phpinfo 声明正在加载的 php 文件。我改变了三个参数:

上传最大文件大小

post_max_size

内存限制

保存文件,重新启动 apache 和 MySQL...重新加载 phpinfo() 页面...没有变化。

我还尝试将 .htaccess 文件放在 Web 根文件夹中,并更改这些参数。这反映在本地值的phpinfo中(主值仍然表示最大上传大小为2M),然后当我去phpmyadmin时最大上传大小仍然是2M ...

我在 c://windows 中寻找了一个 php.ini 文件,因为这是 phpinfo() 声明主值的来源。但那里没有 php.ini 文件。所以我用我想要的价值观创造了一个……没有成功!

有任何想法吗?!这真的让我很烦!!

谢谢,

吉姆

php xampp php-ini

7
推荐指数
2
解决办法
6759
查看次数

PHP Sql Server PDOException:找不到驱动程序

我的服务器是Windows 2008服务器.PHP V7.2.7已安装并正在运行.Sql Server 11(64位)已安装并正在运行(有几个asp.net应用程序在运行且已经在使用该数据库)

我从Microsofts网站下载了PHP Sql Server驱动程序,并将.dll文件放在PHP ext目录中.

在我的PHP.ini中,我添加了:extension=php_pdo_sqlsrv_7_nts_x64

在我的.php文件中,我用来测试我的数据库连接:

 $SqlServer = "THISSERVER\SQLEXPRESS";
 $SqlServerCon = new PDO("sqlsrv:server=$SqlServer;Database=TheDatabase", "DbUName", "DbPassword"); 
if (!$SqlServerCon) {die('Unable To Connect to Sql Server');}
else
{echo "Connection Successful";}     
Run Code Online (Sandbox Code Playgroud)

我得到:( PHP Fatal error: Uncaught PDOException: could not find driver in D:\Inetpub\wwwroot\TechStory2\DBtest.php:7第7行是$ SqlServerCon行).

我做错了什么?以及如何建立与Sql Server的连接需要做什么?

php sql-server php-extension php-ini

7
推荐指数
1
解决办法
2773
查看次数

ini_set('memory_limit',...)不起作用并返回false; 无法弄清楚为什么

ini_set('memory_limit', '128M'); // Returns false; memory_limit unchanged
Run Code Online (Sandbox Code Playgroud)

我无法找到可能导致此问题的列表.到目前为止我检查过:

  • 安全模式:禁用
  • disable_functions:空
  • php_admin_value:我找不到(有没有办法确定?)

我的想法用完了!ini_set与其他参数(例如"display_errors")一起正常工作

php apache php-ini

6
推荐指数
1
解决办法
7485
查看次数

PHP - date()与date.timezone/date_default_timezone_set()

我刚买了一台新电脑,而且我一直在设置PHP/MySQL /数据库等......我想我就在那里,除了抛出这个曲线球.我的登录脚本工作正常,但现在它吐出了以下警告(这会混淆JSON).

警告:date()[function.date]:依赖系统的时区设置是不安全的.您 需要使用date.timezone设置或date_default_timezone_set()函数.如果您使用了这些方法中的任何一种并且仍然收到此警告,则很可能拼错了时区标识符.我们在第47行 选择'EST/10.0/no DST'中的'Antarctica/Macquarie'而不是.../php/login.php

我的代码显然使用date()并在现场版本和旧机器上工作.我得到以下两行代码的两个警告:

$date = date("ymd");

$this_year = date("y");
Run Code Online (Sandbox Code Playgroud)

我的研究(见这里)表明这些函数的行为取决于php.ini.

那么我应该在新机器上更改php.ini,还是我使用某种不推荐的方法,我应该date()完全抛弃?

谢谢.

php warnings date php-ini

6
推荐指数
1
解决办法
2万
查看次数

php中的dll“找不到指定的模块”

我在使用PHP扩展时遇到了麻烦。我正在尝试运行脚本,但没有任何反应,然后检查了错误日志,这是我得到的结果:

PHP Startup: Unable to load dynamic library 'C:\Program Files (x86)\PHP\ext\php_oci8.dll' - The specified module could not be found. in Unknown on line 0
Run Code Online (Sandbox Code Playgroud)

以下文件也是如此:

 php_oci8_11g.dll
 php_pdo_oci.dll
 php_sybase_ct.dll
 php_com_dotnet.dll
Run Code Online (Sandbox Code Playgroud)

除php_com_dotnet.dll以外的所有文件均通过PHP安装进行安装,所有文件均在php.ini配置中启用。在线研究之后,我看到有人说必须将其复制到system32或sysWOW64文件夹,但我没有成功。然后我尝试在cmd中使用regsvr32注册它们,并且每个文件都出现错误:

"The module name_of_the_module.dll failed to load"
Run Code Online (Sandbox Code Playgroud)

我不明白我在做什么错。

服务器配置为Windows 2008 R2 64位,IIS7,PHP 5.3.27

php config php-ini

6
推荐指数
2
解决办法
2万
查看次数

找不到PHP Tidy类,错误

我正在为修复html字符串编写一些代码.我读了一些很好的解决方案,它们与Tidy PHP类一起工作,但我遇到了一些麻烦.这篇文章写的是我想要的,但我需要安装/加载PHP Tidy类. 从截断的HTML字符串中关闭标记

我正在努力PHP 5.5.4.我尝试按照一些教程安装整洁但没有任何附加内容.当我调用整洁的类时$tidi = new \tidy();,NetBeans会向我推荐该类并单击它(Ctrl +单击)我看到它但刷新页面我得到了错误Class 'tidy' not found in ... /myfile.php line ...

我以相同的方式使用了类,$myVar = new \DomDocument();但它完美地运行.

检查Tidy扩展是否像下面一样加载,我得到"NOT LOADED".

echo extension_loaded('tidy') ? "LOADED" : "NOT LOADED";
Run Code Online (Sandbox Code Playgroud)

请问有人可以解释一下Tidy的工作原理以及如何设置它?我的Ubuntu的版本是13.10.

php tidy htmltidy php-ini

6
推荐指数
1
解决办法
1万
查看次数

如何使用自定义php.ini覆盖php cli配置

我正在努力用我的自定义php.ini覆盖php cli配置

我的自定义php.ini

max_execution_time = 90
memory_limit = 256M
safe_mode = Off
Run Code Online (Sandbox Code Playgroud)

运行php cli

php -c /home/env/php.ini -r 'phpinfo();' | grep 'memory_limit'
Run Code Online (Sandbox Code Playgroud)

输出

memory_limit => 256M => 256M
Run Code Online (Sandbox Code Playgroud)

但是自定义php.ini似乎不会覆盖max_execution_time和safe_mode,因为它输出0和On而不是90和Off.

运行这个简单的脚本

#!/usr/bin/php -c /home/env/php.ini
<?php echo 'memory_limit: ' . ini_get('memory_limit');
Run Code Online (Sandbox Code Playgroud)

输出默认的cli配置(128M)而不是预期的256M.

运行这个简单的脚本

#!/usr/bin/php -d max_execution_time=90
<?php echo 'max_execution_time: ' . ini_get('max_execution_time');
Run Code Online (Sandbox Code Playgroud)

按预期输出90.

到目前为止,我已经设法在运行时只覆盖一个单一的配置指令,所以任何帮助都非常赞赏如何覆盖多个配置指令.

编辑:

php -a
php > parse_ini_file('/home/env/php.ini');
Run Code Online (Sandbox Code Playgroud)

输出没有错误,所以我想我的自定义php.ini是好的.我只是发现执行

#!/usr/bin/php -c /home/env/php.ini
<?php echo 'memory_limit: ' . ini_get('memory_limit'); phpinfo();
Run Code Online (Sandbox Code Playgroud)

说加载配置文件=>(无).这似乎是个问题.PHP CLI似乎没有加载我的自定义php.ini文件,即使路径是正确的,语法似乎也很好.

解:

似乎不可能在运行时使用shebang覆盖多个配置指令,至少对我而言.但删除shebang并执行以下命令为我解决了这个问题.

php -d max_execution_time=90 -d memory_limit=256M -d safe_mode=Off …
Run Code Online (Sandbox Code Playgroud)

php command-line-interface php-ini

6
推荐指数
1
解决办法
3055
查看次数