0

Zend Framework 標準に従って、私は Zend_Layout を使用しています。

 zf create project demo
 cd demo
 zf enable layout

それでおしまい

これが私の設定です:

[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0

resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts/"
[staging : production]

[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1

[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1

layout.phtml の状況は次のとおりです。

<?= $this->doctype() ?>

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>  
      <?= $this->headMeta(); ?>


      <?= $this->headTitle(); ?>

    </head>

出力:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>  <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />      <title>Dashboard</title>       </head>

私の問題は、すべての改行と白い線が削除されることです。どうすればそれらを取り戻すことができますか?

しかし、「echo $this->layout()->content」の出力は問題ありません(改行と白い線がまだあります)。

4

2 に答える 2

0
<?= $this->doctype() ?>

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>  
  <?= $this->headMeta(); ?>

  <?= $this->headTitle(); ?>

</head>

ビューヘルパーの後に空の行を追加するだけです。

于 2011-12-01T16:21:20.870 に答える
0

setIndent() 、 setPostfix() 、およびインデントと改行をあまり気にしないことが答えのようです(ただし、それは好きではありません)。

setIndetn() と setPostfix() は、マニュアルでいくらか説明されています (ヘルパーはこれらのメソッドをクラス PlaceHolder から継承します)。

使用例 (あまり良くない html-source/-code の原因):

<?php echo $this->doctype(); ?>
<html>
<頭>
<?php
echo $this->headMeta()->setIndent( ' ' )->setPostfix( "\n" );
echo $this->headTitle()->setIndent( ' ' )->setPostfix( "\n" );
# ...

参考までに; 他のページの中で、私は(の一部)を読みました:

.

于 2012-08-14T16:07:39.527 に答える