MVC:我应该在哪里格式化数据?

jar*_*red 9 php model-view-controller controller model view

我从Model(带数据的数组)中获取数据,我需要以特定格式显示.我需要迭代数组,格式化数据然后显示它.我应该在哪里格式化数据?在模型,控制器或视图中?谢谢.

Mis*_*cha 5

在视图中完成对数组的迭代并显示数据.因此我也会在视图中进行格式化.如果格式化很复杂和/或需要大量代码,请将其放在辅助函数中.

例如:

视图:

<?php foreach($array as $item): ?>
    <p><?php echo format_function($item); ?></p>
<?php endforeach; ?>
Run Code Online (Sandbox Code Playgroud)

帮手:

function format_function($text)
{
    // Do some formatting here...
    return $formatted_text;
}
Run Code Online (Sandbox Code Playgroud)

  • 不要用这样的废话污染你的观点.视图不负责格式化.尝试使用一个单独的图层,负责将对象模型格式化/转换为视图友好视图模型:)就像Stefanvds在.NET中所说的那样,存在一个名为AutoMapper的对象到对象映射器,也许在php中有一个等价物. (4认同)