[請益] 關於陣列長度的問題

看板PHP作者 (Morris)時間10年前 (2014/01/14 11:00), 編輯推噓0(0034)
留言34則, 5人參與, 最新討論串1/1
我在本機上測試 陣列都能跑完 但丟到空間後 陣列長度只能跑到166.. 這也太少了 memroy_limit也有試過了 沒用 請問這真的跟記憶體有關嗎? 有解決方法嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.163.166.218

01/14 11:03, , 1F
水晶球,顯出景象
01/14 11:03, 1F
※ 編輯: vivi50218 來自: 118.163.166.218 (01/14 11:06)

01/14 11:06, , 2F
phpinfo() 先確定主機能讓你改
01/14 11:06, 2F

01/14 11:08, , 3F
我看過主機 memory_limit=256M
01/14 11:08, 3F

01/14 11:08, , 4F
但陣列只能跑到166 也太少了吧...
01/14 11:08, 4F

01/14 11:09, , 5F
不,是phpinfo 出來要是256
01/14 11:09, 5F

01/14 11:11, , 6F
如果真要是256,那你需要檢查你整組程式@@
01/14 11:11, 6F

01/14 11:12, , 7F
是256 但我在local都沒問題阿..
01/14 11:12, 7F

01/14 11:12, , 8F
魔鏡阿魔鏡 請問原po第一行有沒有寫 <?php 阿?
01/14 11:12, 8F

01/14 11:13, , 9F
我local 還只有32 都能用
01/14 11:13, 9F

01/14 11:13, , 10F
1. 換主機空間 2. 在VM或實體VPS架設環境做測試
01/14 11:13, 10F

01/14 11:14, , 11F
我是用input 傳陣列的方式 這有關嗎??
01/14 11:14, 11F

01/14 11:14, , 12F
另外你陣列只能放到 166,你先想一下你有用什麼東西
01/14 11:14, 12F

01/14 11:15, , 13F
...
01/14 11:15, 13F

01/14 11:15, , 14F
OK, 那個有別的東西要改
01/14 11:15, 14F

01/14 11:15, , 15F
你用 post 還是 get 傳??
01/14 11:15, 15F
我是用post 表單是用 while 跑出來的 <form name="form1" id="form1" method="post" action="test.php"> ---中間資料庫語法省略--- <?php while($rs=mysql_fetch_array($conn)){?> <input type="text" name="id[]" value="<?=$rs["id"]?>"> <? } ?> </form> 表單值都有跑完 但post過去後 $id=$_POST["id"]; var_export($id); 卻只有166個 ※ 編輯: vivi50218 來自: 118.163.166.218 (01/14 11:20)

01/14 11:16, , 16F
post 的話要調整 post_max_size
01/14 11:16, 16F

01/14 11:17, , 17F
get method 則不宜傳這個,因為瀏覽器會加以限制
01/14 11:17, 17F

01/14 11:22, , 18F
var_dump($_POST); 看看
01/14 11:22, 18F

01/14 11:22, , 19F
陣列裡面就只有數字而已...
01/14 11:22, 19F

01/14 11:24, , 20F
還是一樣..local 429 空間166...資料都一樣
01/14 11:24, 20F

01/14 11:25, , 21F
post_max_size=100M 我local只有32M而已
01/14 11:25, 21F

01/14 11:27, , 22F
如果 display_errors 沒出錯,資料被截斷 就檢查整組程式吧
01/14 11:27, 22F

01/14 11:29, , 23F
1. 建議先做一個小規模測試,只放 input 表單(複製貼上)
01/14 11:29, 23F

01/14 11:30, , 24F
另外一個是負責顯示 post 值,你就知道是主機問題還是程式了
01/14 11:30, 24F

01/14 11:31, , 25F
01.php = POST DATA => 02.php
01/14 11:31, 25F

01/14 11:31, , 26F
放表單的那一個不要把資料庫放進去,就單純HTML
01/14 11:31, 26F

01/14 11:32, , 27F
如果檢測不出個所以然,換空間吧@.@
01/14 11:32, 27F

01/14 11:41, , 28F
我找到max_input_vars 這個是連陣列的數字都算
01/14 11:41, 28F

01/14 11:41, , 29F
應該是這問題了 這能自己定義嗎? 還是要請他修改
01/14 11:41, 29F


01/14 11:53, , 31F
感謝 真的是max_input_vars的問題 也無法修改預設直..
01/14 11:53, 31F

01/14 11:54, , 32F
看來要改程式了- -
01/14 11:54, 32F

01/14 13:51, , 33F
看看Server的設定吧,有些會加掛 mod_security,把過長
01/14 13:51, 33F

01/14 13:51, , 34F
的參數給截斷。
01/14 13:51, 34F
文章代碼(AID): #1IrAXB4y (PHP)