thrift的php-v0.12版本类自动加载失败

2021-05-14 10:28

阅读:565

标签:sam   提示   类加载   thrift   path   ade   work   class   alt   

参考网上教程,使用$loader->registerDefinition(‘Sample‘, $GEN_DIR); 但是会报PHP Fatal error:  Uncaught Error: Class ‘Sample\formatDataClient‘ not found in /Users/work/local/gopath/src/rpc/phprpc-client.php:32。也就是类加载失败啦。原因应该是因为php-v0.12版本使用的PSR-4 记载规范。并且提示使用$thriftClassLoader->registerNamespace(‘namespace‘, ‘‘) 而不是 u$thriftClassLoader->registerDefinition(‘namespace‘, ‘‘).

 

技术图片

 

 

 

 

 

使用php的thrift,有两点需要注意:

1.需要将thrift/lib/php/*中的内容复制到自己定义的thrift的库目录,如phplib中,然后将子目录lib改成Thrift,否则会报错。因为是ClassLoader/ThriftClassLoader.php的152行地方的namespace是以Thrift\开头的。

2.上面提到的服务也要用$loader->registerNamespace(‘Sample‘, $dir)

 

thrift的php-v0.12版本类自动加载失败

标签:sam   提示   类加载   thrift   path   ade   work   class   alt   

原文地址:https://www.cnblogs.com/chengsheng/p/11990718.html


评论


亲,登录后才可以留言!