Php 通过命令加载需要访问令牌的脚本

Php 通过命令加载需要访问令牌的脚本,php,oauth,Php,Oauth,我使用以下代码使用Instagram API生成访问令牌 $code = $_GET['code']; $client_id = '123456789'; $client_secret = '8cf03fedc8bb44f1beccb0ffb529b487'; $redirect_uri = 'http://testsite.com/redirect.php'; $scope = 'relationships'; $url = "https://api.instagram.com/oauth/a

我使用以下代码使用Instagram API生成访问令牌

$code = $_GET['code'];
$client_id = '123456789';
$client_secret = '8cf03fedc8bb44f1beccb0ffb529b487';
$redirect_uri = 'http://testsite.com/redirect.php';
$scope = 'relationships';
$url = "https://api.instagram.com/oauth/authorize?client_id=".$client_id."&redirect_uri=".$redirect_uri."&scope=".$scope."&response_type=code";

if(empty($code)) {
    echo '<a href="'.$url.'">Login with Instagram</a>';
}
$code=$\u GET['code'];
$client_id='123456789';
$client_secret='8cf03fedc8bb44f1beccb0ffb529b487';
$redirect_uri='1http://testsite.com/redirect.php';
$scope='relationships';
$url=”https://api.instagram.com/oauth/authorize?client_id=“$client\u id.”&redirect\u uri=“.$redirect\u uri.”&scope=“.$scope.”&response\u type=code”;
if(空($code)){
回声';
}
单击上面的链接后,用户将被重定向到
$redirect\u uri
,但URL中有代码值


通过浏览器,这对我来说很好。但是,我似乎无法加载
$url
并通过命令从url获取
$code
。是否仍然可以通过命令行生成访问令牌

PHP可以从命令行接受参数:

调用脚本,如下所示:

php /path/to/script.php code client_id
然后,在PHP脚本中,可以使用以下内容访问参数:

<?php

$code = $argv[1];
$client_id = $argv[2];

// TO-DO: Validate the user input
// rest of your script...

是的,但这如何帮助我重定向到
http://testsite.com/redirect.php?code=123456789
?@Lance:您可以通过使用
f_g_c()
或cURL加载URL内容来获取代码。但我不明白你说的重定向是什么意思。您正在命令行中运行脚本,因此“重定向”没有多大意义。您能解释一下吗?一旦URL中的
code
参数有效,我的脚本的其余部分就可以获得访问令牌,因此工作正常。但是,在终端中输入
php script.php
如何有效加载
php script.php?code=123456789
?@Lance:为什么?不能从命令行填充
$\u GET
数组。您应该像我上面提到的那样传递参数,并使用
$argv
数组访问它们。