【发布时间】:2021-10-28 17:35:08
【问题描述】:
我是第一次尝试 Composer,我正在学习 https://devanswers.co/install-composer-php-windows-10/ 的教程。
安装后,我尝试了教程中的步骤,但出现错误: ( ! ) 致命错误:未捕获的错误:在第 12 行的 C:\inetpub\wwwroot\devforms.gsnetx.org\composerTest\test.php 中找不到类 'Timer' ( ! ) 错误:在第 12 行的 C:\inetpub\wwwroot\devforms.gsnetx.org\composerTest\test.php 中找不到类 'Timer'
测试的第 12 行正在启动 Timer 类:
require __DIR__ . '/vendor/autoload.php';
Timer::start();
// your code
$time = Timer::stop();
var_dump($time);
print Timer::secondsToTimeString($time);
autoload.php的内容是:
// autoload.php @由 Composer 生成 需要一次 DIR 。 '/composer/autoload_real.php';
return ComposerAutoloaderInitb589c5929143c1624bdcdde8c7e6fd8b::getLoader();v
目录结构为:
composerTest
composerTest\vendor
composerTest\vendor\composer
composerTest\vendor\phpunit
composerTest\vendor\phpunit\php-timer
composerTest\vendor\phpunit\php-timer\src
composerTest\vendor\phpunit\php-timer\tests
而autoload_real.php的内容是:
<?php
// autoload_real.php @generated by Composer
class ComposerAutoloaderInitb589c5929143c1624bdcdde8c7e6fd8b
{
private static $loader;
public static function loadClassLoader($class)
{
if ('Composer\Autoload\ClassLoader' === $class) {
require __DIR__ . '/ClassLoader.php';
}
}
/**
* @return \Composer\Autoload\ClassLoader
*/
public static function getLoader()
{
if (null !== self::$loader) {
return self::$loader;
}
require __DIR__ . '/platform_check.php';
spl_autoload_register(array('ComposerAutoloaderInitb589c5929143c1624bdcdde8c7e6fd8b', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
spl_autoload_unregister(array('ComposerAutoloaderInitb589c5929143c1624bdcdde8c7e6fd8b', 'loadClassLoader'));
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
if ($useStaticLoader) {
require __DIR__ . '/autoload_static.php';
call_user_func(\Composer\Autoload\ComposerStaticInitb589c5929143c1624bdcdde8c7e6fd8b::getInitializer($loader));
} else {
$map = require __DIR__ . '/autoload_namespaces.php';
foreach ($map as $namespace => $path) {
$loader->set($namespace, $path);
}
$map = require __DIR__ . '/autoload_psr4.php';
foreach ($map as $namespace => $path) {
$loader->setPsr4($namespace, $path);
}
$classMap = require __DIR__ . '/autoload_classmap.php';
if ($classMap) {
$loader->addClassMap($classMap);
}
}
$loader->register(true);
return $loader;
}
}
据我所见,所有路径看起来都是正确的,但由于这是我第一次使用 Composer,我显然不确定哪里出了问题,希望能指出正确的方向。
我确定这些信息还不够,所以请告诉我还需要什么帮助
提前致谢
【问题讨论】:
-
Class 'Timer' not found- 您尝试过什么来解决问题?你在哪里定义了那个类?
标签: php composer-php