を機能私はカービィのCMSに基づいて、PHPプロジェクトのウェブ・プログラマーと協力し、彼のようなすべての行を開閉したい:しようとオープン&クローズPHPタグ、配列内、
<main>
<?php /*php code here/* ?>
<?php /*more php here*/ ?>
...
このスタイルに従うために、私は自分のコードにいくつかの誤りを見つけました。
BAD CODE
<?php $oo = array(?>
<?php 'h' => 100, ?>
<?php 'v' => 100, ?>
<?php); ?>
が、私のようなforeachループの途中でそれを行うことができます:最初は、私のような配列の途中でこれを行うことができないようだということです
<?php foreach ($p as $subp): ?>
<div id='<?= $subp->title() ?>'>
<?php endforeach; ?>
があります私はこれを行うことができない配列のような他のケース?
答えによると/編集
、唯一の「foreachの」、「しばらく」内のタグ・ブレーク、または「もし」ブロックが存在することができます。
関数内で 'foreach'、 'while'または 'if'はどうですか?であること
<?php
function myFunction($arg){
if($arg === 'this'): ?>
<?= '<p>yep</p>' ?>
<?php else: ?>
<?= '<p>nop</p>' ?>
<?php endif;
};
?>
?: '法的' そして、どの程度機能:?内のforeach内
が<?php
function myFunction($arr){
foreach($arr as $val): ?>
<p><?= $val ?> <p>
<?php if($val === 'this'): ?>
<?= '<p>yep</p>' ?>
<?php else: ?>
<?= '<p>nop</p>' ?>
<?php endif;
endforeach;
};
?>
編集
ありがとう/
それぞれの行が開いて閉じているのが奇妙だと思われますが、それは非常に興味深い質問です。 +1した。 –
結果はhtmlに改行が** LOT **あり、 'header'のような機能は動作しませんので、出力に影響します。 –
基本的には、声明の真ん中にいれば、それを打ち破ることはできません。あなたがコントロール構造の真中にいれば、あなたはほとんど可能です。しかし、それはあなたが*すべきであるという意味ではありません。 – aynber