2013-05-09 3 views
-1

я флажок с именем check_user_id[] как:

<input type="checkbox" value="87" name="check_user_id[]" class="waiting_user"> 
<input type="checkbox" value="88" name="check_user_id[]" class="waiting_user"> 
<input type="checkbox" value="89" name="check_user_id[]" class="waiting_user"> 

Перед загрузкой страницы я использую это для отделки

$_POST = array_map('trim', $_POST); 

всех Valus получает, но не $_POST['check_user_id'] значение непосредственно получить на его имя переменной $check_user_id б 'coz my register_globals is ON, но я просто хочу узнать в $_POST['check_user_id']

любой способ сделать это?

+2

Если применить функцию строки в массив, массив будет. Используйте 'array_walk_recursive()' вместо 'array_map', чтобы этого избежать. – mario

+4

это не SMS, у вас есть бесплатные и неограниченные персонажи. Продвинутый ... B'COZ я могу. –

+0

Вот четвертый ответ: [php global trim $ \ _ post] (http://stackoverflow.com/q/1336257) (возможно дубликат) – mario

ответ

0

trim функция, которая работает только на strings.

$_POST является массивом и может содержать только strings и arrays.

Если вы хотите обрезать все строки в многомерном массиве, вы должны использовать или написать некоторую рекурсивную функцию.

Или выполнить зачистка вручную на каждом элементе вашего массива:

foreach($_POST['check_user_id'] as &$check){ 
    $check = trim($check) ; 
} 
+0

@mario Да, я знаю, но я не вижу причин для выполнения операции 'trim' в массиве' $ _POST'. Это было бы накладными расходами, так как я могу ввести много бесполезных данных через 'POST'. – vikingmaster

Смежные вопросы