码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2019-12-05 18:49:45      阅读:120      评论:0      收藏:0      [点我收藏+]

标签: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‘, ‘<path>‘) 而不是 u$thriftClassLoader->registerDefinition(‘namespace‘, ‘<path>‘).

 

技术图片

 

 

 

 

 

使用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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!