![](/img/trans.png)
[英]notepad++ wildcard how to replace php code including an SESSION array
[英]Autoindent PHP Array in Notepad++?
我目前在跨行自動縮進PHP數組時遇到困難。 標准的TextFX> TextFX編輯> Reindent C ++代碼在這里失敗。
例如,使用以下代碼片段:
<?php
$something = array(
"test" => $var,
"nested" => array(
"subnest" = array(
"low" => "yes",
"foo" => "bar",
),
"bar" => "baz",
),
"last" => "yes",
);
運行“ Reindent C ++代碼”並獲得以下信息:
<?php
$something = array(
"test" => $var,
"nested" => array(
"subnest" = array(
"low" => "yes",
"foo" => "bar",
),
"bar" => "baz",
),
"last" => "yes",
);
並不是我真正追求的。
是否有我缺少的工具或可以在Notepad ++中正確縮進PHP數組的插件?
不幸的是, 在撰寫本文時, Notepad ++仍然不支持花括號{}
塊以外的任何形式的PHP和其他大多數語言的代碼縮進格式。
switch
是另一種:
switch ($value) {
case 1:
foo();
break;
case 2:
bar();
break;
case 3:
qux();
break;
}
成為:
switch ($value) {
case 1:
foo();
break;
case 2:
bar();
break;
case 3:
qux();
break;
}
我發現的解決方案( 至少在PHP中 )是使用大括號進行格式化,因為它們在語法上有效,但不會更改程序結構:
switch ($value) {
case 1: {
foo();
break;
}
case 2: {
bar();
break;
}
case 3: {
qux();
break;
}
}
這具有允許您對腳本的任意塊進行代碼折疊的額外好處。
不幸的是,正如您所發現的那樣,格式化程序無法識別方括號[]
和圓括號()
,並且數組在花括號包裝中不是語法上有效的情況。
簡短的答案是; 抱歉,我也已經盡力嘗試了,您需要找到/編寫一個插件( 我還沒有;我只接受它 )
您的代碼中有一個錯誤-可能是導致它的原因。 Netbeans向我顯示了此錯誤,然后我將其修復。
嘗試更改此行:
"nested" = array(
至
"nested" => array(
並查看Notepad ++如何處理它。
我為此使用了netbeans,即使我在另一個應用程序中編寫代碼,我也將其復制並粘貼到netbeans中以進行整理。
Netbeans返回:
<?php
$something = array(
"test" => $var,
"nested" => array(
"subnest" => array(
"low" => "yes",
"foo" => "bar",
), "bar" => "baz",),
"last" => "yes",
);
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.