2016-06-28 3 views
-2

У меня есть это:Получить определенную часть меняющегося строки

"https://example.com:443/commonauth/?sessionDataKey=2aeeaf42-83d8-4b90-b8b4-39c1856c7de2&type=oauth2" 

Теперь то, что я хочу от этой строки является только sessionDataKey.
Как извлечь эту часть из строки, если длина строки различна каждый раз?

+0

Вы получаете строку, затем вы извлекаете sessionDataKey из строки. Или вы получите URL-адрес, затем получите sessionDataKey? –

+0

Я получаю строку, и я хочу извлечь sessionDataKey – Wouter

ответ

1

Если вы хотите получить sessionDataKey из строки, то вы можете сделать это таким образом

<?php 
    $string = "https://example.com:443/commonauth/?sessionDataKey=2aeeaf42-83d8-4b90-b8b4-39c1856c7de2"; 

    preg_match("/sessionDataKey=([a-z0-9\-]*)(&|$)/", $string, $result); 

    echo $result[1]; 

([а-z0-9 -] +) - матч 1 или больше символов из аз, все цифры от 0-9 и тире

(& | $) - после предыдущего матча приходит символ & или конец строки

Если Вы хотите получить sessionDataKey с вашего URL, то вы можете сделать это таким образом

<?php 
    $sessionDataKey = $_GET['sessionDataKey']; 

    echo $sessionDataKey; 

Это классический способ получить параметры из URL. Подробнее об этом here.

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