2014-10-21 2 views
4

Я должен извлечь строку, как это:параметр Извлечение из строки

index.php?module=Reports&action=abc&rname=Instantpayment 

Теперь моя задача состоит в том, чтобы извлечь report, action и rname значение в PHP.

Я пробовал использовать explode(), но я не могу извлечь module.

Как я могу это сделать?

ответ

4

Вы можете использовать parse_str() в этом случае:

$string = 'index.php?module=Reports&action=abc&rname=Instantpayment'; 
$string = substr($string, strpos($string, '?')+1); // get the string from after the question mark until end of string 
parse_str($string, $data); // use this function, stress free 

echo '<pre>'; 
print_r($data); 

должен вывести:

Array 
(
    [module] => Reports 
    [action] => abc 
    [rname] => Instantpayment 
) 
+0

Да, сэр ее работа спасибо большое – Deepesh

+0

@Deepesh рады этому help – Ghost

4

Использование $_GET для получения строки запроса из URL

echo $_GET['module']; //Reports 
echo $_GET['action']; // abc 
echo $_GET['rname']; // Instantpayment 

Для получения из строки попробуйте explode():

$str ='index.php?module=Reports&action=abc&rname=Instantpayment'; 
$e = explode('?', $str); 
$e1 = explode('&', $e[1]); 
foreach($e1 as $v) { 
    $ex = explode('=', $v); 
    $newarr[$ex[0]] = $ex[1]; 
} 
print_r($newarr); // Use this array of values you want. 
//Array ([module] => Reports [action] => abc [rname] => Instantpayment) 
echo $newarr['module']; 
echo $newarr['action']; 
echo $newarr['rname']; 
+0

сво строку, которая извлекается из массива – Deepesh

+0

проверить мой обновленный ответ –

+0

да сэр проверка ... – Deepesh

2

Вы должны получить доступ к переменной Globale GET:

$_GET['module'] 
$_GET['action'] 
$_GET['rname'] 
+0

Уважаемый сэр, его не URL-адрес его строки, как я могу использовать $ _GET для строки – Deepesh

2

Попробуйте следующее:

<?php 
    $temp = "index.php?module=Reports&action=abc&rname=Instantpayment"; 

    $t1 = explode("=",$temp); 

    for ($i = 1; $i < sizeof($t1); $i++) 
    { 
     $temp = explode("&", $t1[$i]); 
     echo $temp[0] . "\n"; 
    } 
?> 
4
$yourUrl="module=Reports&action=abc&rname=Instantpayment" 
$exploded_array = array(); 
parse_str($yourUrl, $exploded_array); 
$exploded_array['module']; 
$exploded_array['action']; 
$exploded_array['rname']; 
+0

Пожалуйста, попробуйте на полной строке – Deepesh

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