php post提交出现Input variables exceeded 1000

WBOY
Lepaskan: 2016-09-12 17:44:45
asal
2815 orang telah melayarinya

post提交的时候,数组太大就有可能出现这个:

<code>Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars</code>
Salin selepas log masuk
Salin selepas log masuk

解决的办法就是:打开php.ini,修改参数
max_input_vars = 1000;

将默认的1000,改成更大的值。

看似很简单的问题。但是如果接收post请求用户,服务器环境各种各样,你总不能让所有使用你服务的人都改这个参数。

所以,我把post数组,先json_encode和base64处理。封成一个参数,但是服务端解析这些数组,花费了0.3秒的时间。比之前花费多了100倍。感觉这样还是不妥。而且memory_limit如果设置过小,就提示内存不足。

两种方案都各有缺点。

如果是你,你如何处理这个问题呢?

回复内容:

post提交的时候,数组太大就有可能出现这个:

<code>Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars</code>
Salin selepas log masuk
Salin selepas log masuk

解决的办法就是:打开php.ini,修改参数
max_input_vars = 1000;

将默认的1000,改成更大的值。

看似很简单的问题。但是如果接收post请求用户,服务器环境各种各样,你总不能让所有使用你服务的人都改这个参数。

所以,我把post数组,先json_encode和base64处理。封成一个参数,但是服务端解析这些数组,花费了0.3秒的时间。比之前花费多了100倍。感觉这样还是不妥。而且memory_limit如果设置过小,就提示内存不足。

两种方案都各有缺点。

如果是你,你如何处理这个问题呢?

我选第二种方案,json传递。

首先,不知道你怎么算出json解析要比post解析慢0.3秒的,也就是你怎么知道解析post花了多少时间?

其次,json格式相比较于form-data,其可定制性更多,对于列表、对象等,都有更好的支持,利用好这些东西,能够很好地降低传递数据的大小。

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!