TetsujinさんのPHP標準関数snippetのやつ使ってみた
http://d.hatena.ne.jp/Tetsujin/20090319/1237404395
これは良い。
でも挿入される関数の引数部分がちょっと好みじゃなかったので変えてみた。
引数の型やオプションのはとりあえずいっかってことで外してみた。
(豪快に間違っていたので修正しました。[2009-09-23 14:08])
51a53,61 > // argumentsの展開 > $arg_list = array(); > foreach (explode(',', $arguments) as $i => $arg) { > $j = $i + 1; > $arg_list[$i] = '${'. "$j:$arg" .'}'; > } > $arg_str = ''; > $arg_str = implode(', ', $arg_list); > 54,56c64,66 < $snippet = $arguments < ? sprintf('%s(${1:%s})', $function, $arguments) < : sprintf('%s($1)' , $function); --- > $snippet = $arg_str > ? sprintf('%s(%s)', $function, $arg_str) > : sprintf('%s($1)', $function); 82c92 < $arguments = $r ? filter($matches[1]) : ''; --- > $arguments = $r ? filter_args($matches[1]) : ''; 104a115,124 > // 引数用filter > function filter_args($str) > { > $str = filter($str); > $str = preg_replace('/\[.+\]/', '', $str); > $str = preg_replace('/(\A|\s+)\w+(\s+)/', '', $str); > $str = preg_replace('/\$/', '\\\$', $str); > > return $str; > }
phpあんまり詳しくないので微妙かも。
追記
なんか豪快に間違ってた。これだと引数一個しか残んないじゃん。
あとで書き直す。
追記2 [2009-09-23 14:07]
書き直した。