phpstan codeigniter
v1.5.1
該擴展名提供以下功能:
config()和model()函數提供精確的返回類型。service()和single_service()函數的精確返回類型。fake()輔助功能提供精確的返回類型。CodeIgniterModel 's find() , findAll()和first()方法提供精確的返回類型。asArray()或asObject()時允許CodeIgniterModel的動態返回類型轉換。config()或model()函數是有效的類字符串擴展CodeIgniterConfigBaseConfig或CodeIgniterModel 。可以通過設置codeigniter.checkArgumentTypeOfFactories: false in your phpstan.neon中關閉。對於細粒度控制,您可以單獨選擇使用codeigniter.checkArgumentTypeOfConfig和codeigniter.checkArgumentTypeOfModel禁用的工廠功能。注意:設置codeigniter.checkArgumentTypeOfFactories: false將有效地繞過兩個特定選項。service()還是single_service()函數是有效的服務名稱。可以通過設置codeigniter.checkArgumentTypeOfServices: false phpstan.neon中的false。new ,建議使用新的緩存處理程序,並建議使用CacheFactory類。new FrameworkException類取消實例化。$_SERVER和$_GET的直接重新分配或訪問權限,並建議使用Superglobals類。config()和model()上使用::class fetch的使用,並建議使用類的簡短形式。 要使用此擴展名,請在作曲家中需要它:
composer require --dev codeigniter/phpstan-codeigniter
如果您還安裝了phpstan/Extension-installer,那麼您將全部設置!
如果您不想使用phpstan/extension-installer ,請在項目的PHPSTAN配置中包含Extension.Neon:
includes :
- vendor/codeigniter/phpstan-codeigniter/extension.neon該存儲庫中的開發使用PHP 8.1+ 。
從v1.1.0開始,發行版帶有降級版本,以適合較低的PHP版本。目前,最低支持的降級PHP版本為PHP 7.4 。
此擴展名在搜索可能的類時,將config()和model()分別添加為Config and AppModels的默認名稱空間。如果您的應用程序使用其他名稱空間,則可以在phpstan.neon中配置此擴展名。沒有識別這些名稱空間:
parameters :
codeigniter :
additionalConfigNamespaces :
- AcmeBlogConfig
- FooBarConfig
additionalModelNamespaces :
- AcmeBlogModels
對於service()和single_service()函數,您可以指示PHPSTAN考慮自己的服務工廠類。請注意,它應該是一個有效的類擴展CodeIgniterConfigBaseService !
parameters :
codeigniter :
additionalServices :
- AcmeBlogConfigServiceFactory當將模型傳遞給fake()具有屬性$returnType設置為array ,此擴展程序將根據模型的允許字段提供精確的數組形狀。在大多數情況下,格式化的字段是字符串。如果不是字符串,則可以指示特定字段的格式返回類型。
parameters :
codeigniter :
notStringFormattedFields : # key-value pair of field => format
success : bool
user_id : int 歡迎任何貢獻。
如果您想查看特定於CodeIgniter的新規則或擴展,請打開功能請求。如果您可以自己貢獻代碼,請打開拉動請求。
在報告任何錯誤之前,請檢查僅在使用PHPSTAN使用此擴展名時發生錯誤。如果僅在phpstan中重現該錯誤,請改為打開一個錯誤報告。謝謝你!
PHPSTAN CODEIGNITER是在MIT下許可的開源庫。