如何设置PhpStorm Live Template变量默认值为文件所在父目录?
解决PhpStorm Live Template变量自动填充当前文件目录名的问题
嘿,这个需求完全可以通过PhpStorm Live Template的表达式功能实现,刚好能精准拿到你要的当前文件所在的目录名,具体操作和原理如下:
操作步骤
- 打开Live Template设置:依次点击
File → Settings → Editor → Live Templates(或者直接在设置搜索框输入「Live Templates」快速定位) - 在模板列表里找到你创建的
A::set($CATEGORY$,$MESSAGE$);模板并选中它 - 在模板编辑区的「Variables」列表中,点击选中
$CATEGORY$变量 - 点击右侧「Default value」旁的表达式按钮(带
$图标的小按钮) - 在弹出的输入框中填入以下表达式:
"'"+fileName(fileParentDir())+"'" - 点击「OK」保存设置,回到代码里测试模板就可以看到效果了
表达式功能拆解
咱们来理清楚这个表达式的作用:
fileParentDir():获取当前文件所在父目录的完整路径(比如你举的app\views\home\index.php,它会返回app/views/home)fileName(path):从给定路径中提取最后一段的名称(对app/views/home使用这个函数,就会得到home)"'"+...+"'":把目录名包裹成带单引号的字符串,这样生成的代码里直接就是'home',完全符合你要的格式
效果验证
当你在app\views\home\index.php里调用这个Live Template时,$CATEGORY$会自动填充为'home';如果文件在app\views\user\profile.php中,它会自动填充为'user',完美匹配你的需求~
内容的提问来源于stack exchange,提问作者user8620109
相关产品推荐
相关产品推荐

