好的,所以我对OOP很新,在功能PHP中我们可以包含使用其中的函数的文件。
我正在尝试构建我的第一个包,一个简单的API包装器,我正在使用的API具有针对不同感兴趣区域的多个部分。举个例子:
GENRES
EVENTS
TICKETS
目前,我的包使用的文件结构与此类似:
MYNAME
- MYPACKAGE
- SRC
- MyPackageSeviceProvider.php
- MyPackage.php
现在,这一切都有效,我使用MyPackage.php进行一些简单的设置,比如设置API URL等。但是,我真的不想把API的所有部分都放到一个文件中,即getGenres(),getEvents()。
我想将其分解为子文件夹,因此我有如下结构:
MYNAME
- MYPACKAGE
- SRC
- MyPackageSeviceProvider.php
- MyPackage.php
- GENRES
- Genres.php
- EVENTS
- Events.php
- TICKETS
- Tickets.php
我有一个Facade设置,所以我可以调用漂亮的方法(即MyPackage :: getWhatever();)。
实现我想要做的事情的最佳做法是什么?
我怎么能几乎包含类方法,所以我可以调用像MyPackage :: getGenres();并且它将路由到GENRES中的方法 - > Genres.php文件?
答案 0 :(得分:2)
这个问题是偏离主题的,所以应该关闭,但我不能忍受看到你做错了。
命名空间+类文件名应该是连续的,而不是它们之间的额外src目录。如果你想让人们失明,你应该只做大概的事情。
src/
- MyName/
- MyPackage/
- MyPackageSeviceProvider.php
- MyPackage.php
- Genres/
- Genres.php
- Events
- Events.php
- Tickets
- Tickets.php
此外,您可能不希望在您的类或名称空间中使用复数。
我怎么会几乎包含类方法,所以我
您可以使用composer autoloader,并让它为您加载所有类文件。