اذهب إلى المحتوى

السؤال

نشر

لديّ متغيّر نصي مستخرج من Api مع تقنية Curl على شكل:

$response = "oauth_token=xxx&oauth_token_secret=yyy&oauth_expires_in=3600&xoauth_request_auth_url=https%3A%2F%2Fapi.login.yahoo.com%2Foauth%2Fv2%2Frequest_auth%3Foauth_token%3Dxxx&oauth_callback_confirmed=true";

وكما هو ملاحظ فالمتغير عبارة عن دمج لعدة متغيرات، وسؤالي يتمحور عن كيفية استخراج هذه المتغيرات بشكل منفصل، وقد حاولت فعل ذلك بنفسي عن طريق الكود:

$arr = explode('&', $response);

$url = $arr[3];     
$url = explode('=', $url);

$xoauth_request_auth_url = $url[1]; 

لكني لم أحصل بشكل صحيح على قيم المتغيرات، فهل من طريقة أفضل لفعل ذلك؟

Recommended Posts

  • 0
نشر

توفر لغة php دالة parse_str والتي تمكّنك من تحليل الرابط وتحويله إلى مصفوفة و urldecoder لاستخراج decoder charcters:

parse_str($response, $array);
$array = array_map('urldecode', $array);

print_r($array);

لتحصل على المصفوفة التالية:

Array
(
    [oauth_token] => xxx
    [oauth_token_secret] => yyy
    [oauth_expires_in] => 3600
    [xoauth_request_auth_url] => https://api.login.yahoo.com/oauth/v2/request_auth?oauth_token=xxx
    [oauth_callback_confirmed] => true
)

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...