在我的项目中找不到PHP库
I'm not a web dev (I'm a mobile developer) and trying to figure this out.
I'm using this library: https://github.com/ktamas77/firebase-php
I got 'composer' installed on my machine by following the documentation on composer's site.
I have installed the library in #1 by using this command: 'php composer.phar require ktamas77/firebase-php dev-master'
-
In a certain screen or php file in my project, I'm adding this:
$firebase = new \Firebase\FirebaseLib(DEFAULT_URL, DEFAULT_TOKEN);
and when I run or go to that specific screen, there's an error like this:
Message: Class 'Firebase\FirebaseLib' not found
My question is: Why is that? Why can't this freakin php project find that FirebaseLib? I can verify that I have such file in my project, cause I can open the file from that code above.
The path of that file is this:
'/Applications/MAMP/htdocs/xxx-cms/vendor/ktamas77/firebase-php/src/firebaseLib.php'
Is adding 'require' at the top of my php file required?
I tried adding require but the error goes to that require when adding that.
Lastly, I even modified my composer.json and added "autoload" as was suggested here: How does PHP connection to firebase work?
{
"description": "The CodeIgniter framework",
"name": "codeigniter/framework",
"type": "project",
"homepage": "https://codeigniter.com",
"license": "MIT",
"support": {
"forum": "http://forum.codeigniter.com/",
"wiki": "https://github.com/bcit-ci/CodeIgniter/wiki",
"irc": "irc://irc.freenode.net/codeigniter",
"source": "https://github.com/bcit-ci/CodeIgniter"
},
"require": {
"php": ">=5.2.4",
"ktamas77/firebase-php": "dev-master"
},
"suggest": {
"paragonie/random_compat": "Provides better randomness in PHP 5.x"
},
"require-dev": {
"mikey179/vfsStream": "1.1.*"
},
"autoload": {
"classmap": ["vendor/ktamas77/firebase-php/src/firebaseLib.php"]
"files": ["vendor/ktamas77/firebase-php/src/firebaseLib.php"]
}
}
Unfortunately I wasn't able to do this instruction from that SO answer:
Then simply require Composer's Autoloader with require "vendor/autoload.php"; and new Firebase to autoload the class.
Thanks.
You need to add the autoloader from composer into your base script or some bootstrap file.
Something like:
require "vendor/autoload.php";