|
|
|
| Имеется код:
parse_str($this->input->post('formData'),$array);
$_POST['message'] = $array['message'];
|
Массив на выходе от parse_str:
Array ( [subject] => ллллллллл [message;] => оииили )
|
Вставляется точка с запятой почему-то только для русского текста..и после parse_str - в массиве нет значения message | |
|
|
|
|
|
|
|
для: OLi
(11.05.2014 в 18:01)
| | parse_str разбирает строку URL, то есть, если она у вас содержит ошибки, то и результат разбора будет их содержать.
<?
$a = 'subject=ллллллллл&message=оииили';
mb_parse_str($a, $a);
print_r($a);
?>
Array
(
[subject] => ллллллллл
[message] => оииили
)
|
| |
|
|
|
|
|
|
|
для: confirm
(12.05.2014 в 06:58)
| | А как же быть с POST? Функция только с GET работает | |
|
|
|
|
|
|
|
для: OLi
(12.05.2014 в 19:04)
| | Функция разбирает строку, и если таковую передать элементов POST массива, то и она будет обработана (в примере с вашими данными вообще не затрагивается откуда...)
А вот непосредственно массивы, то есть тип Array она не обрабатывает. Да и зачем это нужно, я лично не понимаю. | |
|
|
|
|
|
|
|
для: confirm
(12.05.2014 в 19:27)
| | Если форма имеет несколько полей с одинаковым именем - тогда приходится обрабатывать как массив - если сериализовать | |
|
|
|
|
|
|
|
для: OLi
(12.05.2014 в 19:54)
| | Форма может иметь массу одинаковых имен, но только на разных уровнях вложения, а может и не иметь таковых, но и в том и другом случае это массив.
Серелизовать массив, чтобы потом опять его извлечь, это для чего? | |
|
|
|
|
|
|
|
для: confirm
(12.05.2014 в 20:06)
| | Вопрос тот же...искажает имена полей форм:
Форма HTML:
<input type="checkbox" value="19" name="type[]"><label for="164932274476.1485">Aliev</label></div></li><li> <input type="checkbox" value="2" name="type[]">
|
PHP вывод:
parse_str($_POST['formData'], $arrData);
var_dump($arrData); die();
|
Результат:
array(5) {
["type"]=>
array(1) {
[0]=>
string(2) "19"
}
["type;"]=>
array(2) {
[0]=>
string(1) "2"
[1]=>
string(1) "3"
}
|
| |
|
|
|
|
|
|
|
для: OLi
(17.05.2014 в 01:12)
| | Вы в руководство РНР заглядываете или нет? parse_str не разбирает массивы, она разбирает строки. Достучаться до элементов массива, это работать с массивом.
<?
var_dump($_POST['type']);
|
Вы либо полностью опишите решаемое, где действительно нужен разбор строки, либо не майтесь ... | |
|
|
|