Как передать переменную как ключ $ _POST в PHP?

Как передать переменную как значение ключа массива $ _POST в PHP? Или это невозможно?

$test = "test"; echo $_POST[$test]; 

благодаря

 $_POST['key'] = "foo"; echo $_POST['key']; 

Если я правильно понял, вы хотите установить ключ $_POST .

Если я получу вас правильно, вы хотите передать переменную из одного php-файла в другой через сообщение. Это можно сделать несколькими способами.

1. С HTML-формой

 <form action="target.php" method="post"> <input type="text" name="key" value="foo" /> <input type="submit" value="submit" /> </form> 

если вы нажмете на кнопку отправки, $_POST['key'] в target.php будет содержать 'foo' .

2. Непосредственно из PHP

 $context = stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => "Content-type: text/html\r\n", 'content' => http_build_query(array('key' => 'foo')) ), )); $return = file_get_contents('target.php', false, $context); 

То же, что и в 1. , а $return будет содержать весь результат, созданный target.php .

3. Через AJAX (jQuery (JavaScript))

 <script> $.post('target.php', {key: 'foo'}, function(data) { alert(data); }); </script> 

То же, что и в 2. , но теперь data содержат выход из target.php .

Да, да, вы можете:

 $postName = "test"; $postTest = $_POST[$postName]; $_POST["test"] == $postTest; //They're equal 

Работает так же, как вы сказали …

Пример :

 // create an array of all the GET/POST variables you want to use $fields = array('salutation','fname','lname','email','company','job_title','addr1','addr2','city','state', 'zip','country','phone','work_phone'); // convert each REQUEST variable (GET, POST or COOKIE) to a local variable foreach($fields as $field) ${$field} = sanitize($_POST[$field]); ?> 

Обновлено на основе комментариев и downvotes ….

Я не так, как было предложено ниже в комментариях, зацикливая все данные и добавляя в переменную-im цикл предварительно заданного списка переменных и сохраняя их в переменных …

Я изменил метод получения данных