HTML入力名を知っているだけでphp変数を取得する必要があります。
入力の名前が admin[username] であることはわかっているので、変数 $_POST['admin']['username] を取得したい
入力の何らかの検証のためにこれが必要です。つまり、フォームを表示するときに html の入力名を保存しますが、次のサーバー要求でのみテストするので、javascript またはHTML入力名がadmin[]の場合、配列を持つことができます
ありがとうございました
$postdata = get_associative_array_from_post_data($post['admin']);
function get_associative_array_from_post_data($array){
if(isAssoc($array)){
/*foreach($array as $key=>$value){
$your_key = $key;
$your_value = $value;
}*/
return $array;
}
else{ //if the post array has no keys, search for arrays within this
$key_collection=array();
foreach($array as $sub_array){
foreach($sub_array as $key=>$value){
$key_collection[$key][] = $value;
}
}
return $key_collection;
}
}
function isAssoc($arr)
{
return array_keys($arr) !== range(0, count($arr) - 1);
}
投稿する場合:
admin [username]='test'およびadmin[email]='test@example.com'
あなたが得るでしょう
$postdata = array('username'=>'test', 'email'=>'test@example.com');
投稿する場合:admin [] [username]='test'およびadmin[][username] ='test2' admin [] [email]='test@example.com'およびadmin[][email] ='test2 @ example.com '
あなたが得るでしょう:
$postdata = array(
'username'=>array('test', 'test2'),
'email'=>array('test@example.com', 'test2@example.com')
);