私はいくつかのWordPressプラグインコードを読んでいて、フランス語を許します。CからJavaScriptまで、PHPを含む多くのものをコーディングしましたが、次のようにしてどのようなロジックが実現されるかわかりません。
<?php
function dcontact_options_page() {
if($_GET['action'] == 'edit_group') {
dcontact_action_edit_group();
return;
}
elseif($_GET['action'] == 'edit_form') {
dcontact_action_form_settings();
return;
}
elseif(isset($_POST['set_order'])) {
$result = dcontact_action_set_order();
}
else if(isset($_POST['new_group'])) {
$result = dcontact_action_new_group();
}
else if($_GET['action'] == 'delete_group') {
$result = dcontact_action_delete_group();
}
if(!isset($result['message']) && isset($_GET['message'])) $result['message'] = urldecode($_GET['message'])
?>
<div class="wrap">
<div class="icon32" id="icon-options-general"><br></div>
<!-- More HTML AND PHP code blocks -->
<!-- And then suddenly... -->
<?php
} /// What's this? End of function definition? PHP chokes on this with syntax error.
///...
?>
if
私はPHPと逐語的な出力を混合することに不思議ではありません。また、sayステートメントの途中でPHPブロックに出入りすることもかなりの割合で行いましたが、これがそれを上回っています。男が達成しようとしていたことを誰かが説明できますか?コードは、if
条件が評価された場合、true
大量のマークアップが書き出される(そしてさらに多くのPHPが実行される)が、関数定義が突然終了することを意味しますか?多分それは関数が何をするのか?HEREDOC
つまり、読みやすさのために構文を使用したでしょう。
要約すると、私のコマンドラインPHP5.4.7プリプロセッサは最後にチョークし}
ます。そして、私はそれを非難するとは言えません。このようなスパゲッティコードは、しばらくの間見たことがありません。