2016-09-01 1 views
1

Можно ли взять параметр $ _GET из URL-адреса и поместить его в переменную php без использования foreach? Если я:

var_dump($_GET); 

Я получаю результат:

array(1) { ["block_simple_clock"]=> string(0) "" } 

Мне нужно положить, что значение block_simple_clock в строковой переменной, и я могу сделать это с Еогеасп:

foreach($_GET as $key => $value) { 
    var_dump($key); 
} 

Но я бы очень хотел принять это значение без использования foreach, если это возможно. Я ненавижу, используя Еогеасп для такой тривиальной задачи :)

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

foreach ($pluginlist->plugins as $key => $plugin) { 

     if (empty($plugin->component)) { 
      continue; 
     } 

     if (in_array($plugin->component, $arr)) { 
      if (!in_array($plugin->component, $contribs)) { 
       $target_url = new moodle_url('redirect.php'); 

       $mform->addElement('advcheckbox', $plugin->component, "<a href={$target_url}?$plugin->component target='_blank'>" . $plugin->name . "</a>", '', array(0, 1)); 
       } 
      } 
     $requestedPluginIdCounter++; 
    } 

As вы можете увидеть, что компонент $ plugin-> - это значение, которое я отправляю через $ _GET.

+2

'$ variable = $ _GET ['block_simple_clock'];'? –

+0

вы можете показать, как вы его передаете? ваш url – rahul

+0

Его не совсем очевидно, если вы хотите, чтобы значение содержалось в массиве ИЛИ имя массива, что это такое? – RiggsFolly

ответ

0

Вы можете сделать это:

$t = array_keys($_GET); 
echo $t[0]; 
0
$variable = $_GET['block_simple_clock']; 

ИЛИ

$variable = $_REQUEST['block_simple_clock']; 
+0

Я думаю, что существующий комментарий от @JonStirling вполне достаточен для такого простого вопроса (php 101) – RiggsFolly

+0

, поэтому я внес изменения, это также может помочь кому-то ... многие люди ищут ответы не для комментариев @RiggsFolly – rahul

0

Если вы точно знаете, какие из них вам нужно, вы можете использовать

$var = $_GET['name-in-get']; 

Вы Mays хотите используйте функцию

extract($_GET); 

Что создает глобальных переменные с именем ключа:

//suppose GET = $_GET['name'] 
extract($_GET); 
echo $name; //will echo $_GET['name'] 

Помните ВСЕГДА фильтра получает и сообщения значения, так как они пользовательский ввод (очевидно, это зависит от того, что вы делаете с их особенно важно, если они используются для целей базы данных, это чрезвычайно важно) Для получения дополнительной информации см. filter_input функция

0

Thank вы, ребята, я добавил компонент name = $ plugin-> и смог извлечь переменную с этим $ _GET ["name"] :)

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

  • Нет связанных вопросов^_^