1

定義されたテンプレートに常に従ういくつかの HTML ポップアップを作成しています。

テンプレート (ヘッダー、コンテンツ、サンプル テーブル、その他のボタン) があるので、次のようにラッパー関数にデータを渡すことで、多くの繰り返し html を保存できると考えました。

$device_popup_data = array(
    'header' => 'Header text',
    'content' => 'some text<span style ="bold"> Some more text</span>',
    'example' => '<table><tbody><tr><td> A lot of text here, multi lined and messy',
    'more' => '',
);

echo theme_uxt_expanded_popup($device_popup_data);

function theme_uxt_expanded_popup($data){
    $head = isset($data['head'])?$data['head']:'';
    $content = isset($data['content'])?$data['content']:'';
    $example = isset($data['example'])?$data['example']:'';
    $more_html = isset($data['more'])?$data['more']:'';

    $output= '<div class = "expandedTooltip">';
    $output.=   '<h1>'.$head.'</h1>';
    $output.=   '<p>'.$content.'</p>';
    if(!empty($more)){
        $output.=   '<a class = "popupShowMore"><p>'.$more.'</p></a>';
    }
    $output .= '</div>';
    return $output;
}

これは素晴らしいアイデアのように思えましたが、フィールドのように、これらのフィールドの一部にexample約 100 行の HTML が含まれている可能性があることを確認するまでは.

これらの長い文字列を example 変数にプッシュすると、コードが非常に判読不能になるようです。このようなもの :

$device_popup_data = array(
    'header' => 'Header text',
    'content' => 'some text<span style ="bold"> Some more text</span>',
    'example' => '<table><tbody><tr><td> A lot of text here</td>,<td> multi lined and 
    messy, and if any one</td>
 <td>wants to change this string it will be very hard</td> 
Real string is much longer ... </table>',
    'more' => '',
);

このようなことを行うための効率的で読みやすい方法を知っていますか?

4

1 に答える 1