让Textmate从文件路径创建PHP自动加载类名
我想要的是一个片段,当执行时,它将获取TM_文件路径输出 在斜线上爆炸/ 然后将每个部分拆分为包含该部分和下划线的占位符(除了最后一部分(文件名)) 例如: 对于目录路径中的文件 /路径/到/原始/文件 我们会得到让Textmate从文件路径创建PHP自动加载类名,php,textmate,autoload,code-snippets,Php,Textmate,Autoload,Code Snippets,我想要的是一个片段,当执行时,它将获取TM_文件路径输出 在斜线上爆炸/ 然后将每个部分拆分为包含该部分和下划线的占位符(除了最后一部分(文件名)) 例如: 对于目录路径中的文件 /路径/到/原始/文件 我们会得到 class ${1:Path_}${2:To_}${3:Original_}${4:File} { // code here } 然后我可以跨过并移除我不想要的部分 以符合标准PHP自动加载程序的类名结尾 这听起来可能吗 干杯, Chris必须添加此最终结果作为答案才能启用
class ${1:Path_}${2:To_}${3:Original_}${4:File} {
// code here
}
然后我可以跨过并移除我不想要的部分
以符合标准PHP自动加载程序的类名结尾
这听起来可能吗
干杯,
Chris必须添加此最终结果作为答案才能启用代码显示。
只需确保设置“输出为代码段”
#!/usr/bin/php
<?php
$path = $_ENV['TM_FILEPATH'];
$path = trim($path, '/');
$path = trim($path, '.php');
$parts = explode('/', $path);
$lastPart = end($parts);
echo 'class ';
foreach ($parts as $id => $part) {
// textmate placeholders start at 1
$id = $id+1;
if ($lastPart == $part) {
echo '${'.$id.':'.$part.'}';
} else {
echo '${'.$id.':'.$part.'_}';
}
}
?>
#/usr/bin/php