我在GitHub上遇到了一个开源项目,SoundCloud-Profile-Backup,用户开发了一个包含一些PHP代码的网页:
require 'secure.php';
//Create a secure.php and set the variable $client_id to your client_id
随后使用$client_id
变量(但从未在网页中明确设置,我可以看到)作为\resolve
中SoundCloud HTTP API资源的参数。
以下是使用它的行的片段:
http://api.soundcloud.com/resolve.json?url=http://soundcloud.com/$username&client_id=$client_id
由于我不熟悉PHP和SoundCloud应用程序开发,我的问题是:
$client_id
变量究竟是什么?它是否是一种PHP内置变量,只要包含 secure.php 就会设置,如注释所暗示的那样?答案 0 :(得分:1)
require 'secure.php';
以及我的应用中使用的$client_id
变量(我们在软件建议上发言)和与SoundCloud或PHP无关。
基本上,文件secure.php
和$client_id
背后的想法是将SoundCloud API的凭据放在一个文件中。该文件将在我的.gitignore
文件中,因此不会被发送到GitHub。通过这种方式,我可以将脚本设置为public,将凭证设置为private。
有关require '';
的信息,请查看Require function on PHP.org。基本上,它只是确保参数中给出的文件加载,如果它没有,脚本就会出错。
$client_id
是SoundCloud的Developer App Dashboard提供的32个字符ID。
同样, SoundCloud 和 PHP 与secure.php
或$client_id
无关 - 它只是在我的应用中使用。