使用PHP';他是第一位作曲家
我正试着用PHP的composer让我的头脑清醒起来。特别是,我正在尝试加载这个 我正在必要的文件夹(我的应用程序的根目录)中安装composer,因此它会创建一个使用PHP';他是第一位作曲家,php,composer-php,Php,Composer Php,我正试着用PHP的composer让我的头脑清醒起来。特别是,我正在尝试加载这个 我正在必要的文件夹(我的应用程序的根目录)中安装composer,因此它会创建一个composer.phar 我确保在同一目录中为项目提供了正确的JSON文件: { "name": "tumblr/tumblr", "description": "Official Tumblr PHP Client", "keywords": ["tumblr", "api", "sdk", "gif
composer.phar
我确保在同一目录中为项目提供了正确的JSON文件:
{
"name": "tumblr/tumblr",
"description": "Official Tumblr PHP Client",
"keywords": ["tumblr", "api", "sdk", "gif"],
"homepage": "https://github.com/tumblr/tumblr.php",
"authors": [{
"name": "John Crepezzi",
"email": "john.crepezzi@gmail.com",
"homepage": "https://github.com/seejohnrun",
"role": "developer"
}],
"license": "Apache-2.0",
"type": "library",
"require": {
"eher/oauth": "1.0.*",
"guzzle/guzzle": ">=3.1.0,<4"
},
"require-dev": {
"phpunit/phpunit": "*"
},
"autoload": {
"psr-0": {
"Tumblr\\API": "lib"
}
}
}
{
“名称”:“tumblr/tumblr”,
“描述”:“官方Tumblr PHP客户端”,
“关键词”:[“tumblr”、“api”、“sdk”、“gif”],
“主页”:https://github.com/tumblr/tumblr.php",
“作者”:[{
“姓名”:“John Crepezzi”,
“电子邮件”:“约翰。crepezzi@gmail.com",
“主页”:https://github.com/seejohnrun",
“角色”:“开发人员”
}],
“许可证”:“Apache-2.0”,
“类型”:“库”,
“要求”:{
“eher/oauth”:“1.0.*”,
“狂饮/狂饮”:">=3.1.0,Composer生成一个文件vendor/autoload.php
。如果您想在自己的代码中使用与Composer一起安装的任何东西,您只需要求一次“vendor/autoload.php”
,然后就可以在Composer安装的任何库中调用任何代码;自动加载程序将负责查找包括必要的文件,而不必担心供应商
文件夹中的特定目录
composer.json文件中的autoload
条目存在,因此任何库都可以指定其文件应如何自动加载的详细信息。通常,您不必在应用程序中使用该条目进行任何操作。您可以使用该条目“免费”为自己的代码添加自动加载如果您愿意。但是,您也不需要添加此项来使用任何已安装的依赖项,这些依赖项都应该已经正确配置,以便在各自的composer.json文件中自动加载。如果您显示的json数据在您自己的项目中,则说明您的操作是错误的。该json数据来自原始Tumblr项目,您应该不能将其复制到您的项目中,因为您发现,它不会真正帮助您使用Tumblr客户端
正确使用Composer的方法:
通过拥有一个主目录(可能已经有文件)来启动项目
运行composer init
轻松创建初始composer.json
文件
系统将询问您是否要包含依赖项。您可以回答“是”,并添加tumblr/tumblr
作为项目的依赖项
或者,如果您已经有了composer.json
,可以调用composer require-tumblr/tumblr:~0.1
要在代码中使用库,您必须包含文件vendor/autoload.php
,然后可以根据文档创建所有类。您希望发生什么事情?加载tumblr.php是什么意思?在JSON中,autoload表示“tumblr\\API”:“lib”
但是在我的供应商
文件夹中没有远程调用该文件夹。这可能是因为一个错误,还是因为我误解了composer的工作原理?谢谢。我还意识到他们只是在加载依赖项,所以我仍然必须从Github加载主控程序。:)