VS Code + PHP Intelephense + Remote-SSH + Symfony 3:未定义方法错误
VS Code + PHP Intelephense + Remote-SSH + Symfony 3 : undefined method error
我正在探索 VS Code,我是这个代码编辑器的新手,在我使用 Atom 之前,但我想使用看起来非常酷的 VS Code!
我在 Linux 服务器上有一个 Symfony 3 项目,我想直接修改它的文件,因为它是一个开发环境。我不想拥有本地副本。
因此,我在我的 PC 上安装了 VS Code,并下载了 Remote-SSH 和 PHP Intelephense 扩展。经过几个问题后,我设法让它工作,但我的控制器内部有很多问题,因为 PHP Intelephense 不识别很多方法,而它应该识别。
我关闭了 VS Code 的内置 PHP 语言功能。
例如,这里有一些未定义的方法:
它无法识别实体的 $repository->createQueryBuilder()
或 $em->createQuery()
或 Repository
class 内的自定义函数。它不识别在 Controller 本身内部定义的某些功能,但它们已正确定义。
它不识别 Symfony 基本存储库方法,如 $repo->findOneByProperty()
等
所以我的文件全是错误,而一切正常! ^^
有人可以帮助我吗?如果 Remote-SSH 不是最好的扩展,也许你可以建议我另一个? Intelephense 也一样吗?
我找到的唯一解决方案是将项目放在本地,并在保存文件后使用 SFTP
扩展名(由 liximomo)上传到服务器上。 PHP Intelephense
在该配置下运行良好。 Symfony for VScode
扩展(由 TheNouillet 提供)也很有用。
settings.json
"emmet.includeLanguages": {
"twig": "html"
},
"symfony-vscode.phpExecutablePath": "C:\wamp64\bin\php\php5.6.16\php.exe",
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/node_modules/*/**": true,
"**/vendor/**": true
},
"editor.quickSuggestions": {
"other": true,
"comments": true,
"strings": true
},
"php.suggest.basic": false,
"intelephense.files.exclude": [
"**/.git/**",
"**/.svn/**",
"**/.hg/**",
"**/CVS/**",
"**/.DS_Store/**",
"**/node_modules/**",
"**/bower_components/**",
"**/vendor/**/{Test,test,Tests,tests}/**/*Test.php"
],
"intelephense.diagnostics.undefinedMethods": false
我正在探索 VS Code,我是这个代码编辑器的新手,在我使用 Atom 之前,但我想使用看起来非常酷的 VS Code!
我在 Linux 服务器上有一个 Symfony 3 项目,我想直接修改它的文件,因为它是一个开发环境。我不想拥有本地副本。
因此,我在我的 PC 上安装了 VS Code,并下载了 Remote-SSH 和 PHP Intelephense 扩展。经过几个问题后,我设法让它工作,但我的控制器内部有很多问题,因为 PHP Intelephense 不识别很多方法,而它应该识别。
我关闭了 VS Code 的内置 PHP 语言功能。
例如,这里有一些未定义的方法:
它无法识别实体的 $repository->createQueryBuilder()
或 $em->createQuery()
或 Repository
class 内的自定义函数。它不识别在 Controller 本身内部定义的某些功能,但它们已正确定义。
它不识别 Symfony 基本存储库方法,如 $repo->findOneByProperty()
等
所以我的文件全是错误,而一切正常! ^^
有人可以帮助我吗?如果 Remote-SSH 不是最好的扩展,也许你可以建议我另一个? Intelephense 也一样吗?
我找到的唯一解决方案是将项目放在本地,并在保存文件后使用 SFTP
扩展名(由 liximomo)上传到服务器上。 PHP Intelephense
在该配置下运行良好。 Symfony for VScode
扩展(由 TheNouillet 提供)也很有用。
settings.json
"emmet.includeLanguages": {
"twig": "html"
},
"symfony-vscode.phpExecutablePath": "C:\wamp64\bin\php\php5.6.16\php.exe",
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/node_modules/*/**": true,
"**/vendor/**": true
},
"editor.quickSuggestions": {
"other": true,
"comments": true,
"strings": true
},
"php.suggest.basic": false,
"intelephense.files.exclude": [
"**/.git/**",
"**/.svn/**",
"**/.hg/**",
"**/CVS/**",
"**/.DS_Store/**",
"**/node_modules/**",
"**/bower_components/**",
"**/vendor/**/{Test,test,Tests,tests}/**/*Test.php"
],
"intelephense.diagnostics.undefinedMethods": false