1

私はPHPインクルードを使用しています:

include_once("somephpfile.php");

そして、非常に問題のある CSS/HTML デザイナー。私はすべての PHP をデザイナーから遠ざけようとしています。彼らは非常にパニックになるからです : \ そして彼らは多くの問題を引き起こし、コードや物を削除し、すべてを台無しにします。

そのため、PHP インクルードを使用して、必要に応じて HTML 間に PHP を追加しています。

PHP は正常に動作し、バグはありません。

私の問題を引き起こしているのは、PHP を複数のインクルード ファイルに分割することです。

以下は、私が分離しようとしているものの例です。

分離する PHP:


<?php
$foo = 0;
$bar = 0;

if($foo == 0){

    $foo++;
    $bar++;
    // more php code

    while($foo < 20){

        $foo++;
        $bar++;
        // more php code

    // Now write the designers HTML here in this loop
    ?>  

        <BR /> Some HTML 
        <?php echo $foo; ?>
         more html 
        <?php echo $bar; ?>
        <BR /> More HTML <BR /> <BR />

    <?php
    // Done with the designers code -Now close my PHP here

   }// END while($foo < 5)

}// END if($foo == 0)
?>

これを 2 つのインクルード (include1.php と include2.php) に分けたい

そして、while ループの間に設計者にコードを書いてもらいたいのです。だから私がしたことはこれでした:


include1.php

   if($foo == 0){

    $foo++;
    $bar++;
    // more php code

      while($foo < 20){

        $foo++;
        $bar++;
       // more php code
   ?>

DESIGNERS HTML と少し混ざった PHP

    <BR /> Some HTML 
    <?php echo $foo; ?>
     more html 
    <?php echo $bar; ?>
    <BR /> More HTML <BR /> <BR />

include2.php

    <?php
   // Done with the designers code -Now close my PHP here

  }// END while($foo < 5)

}// END if($foo == 0)
?>

エラーが表示されます(「解析エラー: 構文エラー、予期しない $end in)」

複数の if と while とループがあります。

私の質問は次のとおりです。エラーなしでこれらの中かっこ/大かっこを分離するにはどうすればよいですか?

ありがとうございました

4

3 に答える 3

0

Smartyを使用します。これにより、プレゼンテーションの側面を PHP から切り離すことができます。

于 2012-11-26T01:34:23.643 に答える
0

あなたがやろうとしていることは間違っています。ifやのような PHP 制御構造whileを複数のファイルに分割することはできません。PHP を HTML から分離する必要がある場合は、 Smarty テンプレートが最適です。PHP と同様に、HTML を堅固でクリーンに保ちます。

于 2012-11-25T23:52:47.033 に答える
0

<?phpインクルードの開始ビットと終了?>ビットが投稿されている場合、それらと矛盾していると思います。通常どおり、PHP コードの前後に配置する必要があります。それでもうまくいくかどうかはわかりません。

代わりに、考え方を逆にして、PHP に含めることができる「デザイナーの HTML」用に別の .php ファイルを用意する必要があります。そうすれば、デザイナーはエコー用の単純な PHP のみを含むファイルを取得できます。これは、目的に応じてロジックとデザインを適切に分離することができます。

于 2012-11-25T23:53:55.473 に答える