Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
338 views
in Technique[技术] by (71.8m points)

请教composer psr-4加载问题

我在composer.json文件里加入

"autoload" : {
        "files" : [
            "src/app/functions.php"
        ],
        "psr-4" : {
            "App\" : "src/app",
            "Portal\" : "src/portal",
            "SeeKafka\": "src/SeeKafka"
        }
    }

composer update后autoload_psr4.php文件:

$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);

return array(
    'SeeKafka\' => array($baseDir . '/src/SeeKafka'),

然后使用:

namespace AppApiGlp;

use SeeKafkaLite;

class User
{
   
    public function kafka(){
        $KafKa_Lite = new Lite("127.0.0.1,localhost");
        // 设置一个Topic
        $KafKa_Lite->setTopic("glp");
        // 单次写入效率ok  写入1w条15 毫秒
        $Producer = $KafKa_Lite->newProducer();
        // 参数分别是partition,消息内容,消息key(可选)
        // partition:可以设置为KAFKA_PARTITION_UA会自动分配,比如有6个分区写入时会随机选择Partition
        $Producer->setMessage(0, "hello");
    }
报错:  
**Fatal error**: Uncaught Error: Class 'SeeKafkaLite' not found in /www/xxx/glp/src/app/Api/Glp/User.php:48 Stack trace: #0 [internal function]:

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

卧槽,奇怪一逼

"psr-4" : {
            "App\" : "src/app",
            "Portal\" : "src/portal",
            "SeeKafka\": "src/SeeKafka"
        }

改成

"psr-4" : {
            "App\" : "src/app",
            "Portal\" : "src/portal",
            "SeeKafka\": "src/seekafka"
        }

就可以了 为什么目录名字不能大写?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...