Is it bad to use html inside a php class?

Viewed 2320

is there anything wrong with using html inside a class function? I call it in the DOM so I don't need a string returned.

public function the_contact_table(){
    ?>
    <div>
        some html here
    </div>
    <?php
}

Also when I do need the string I use this method? Is there a better way or is this relatively standard?

public function get_single(){
    ob_start();?>
        <div class='staff-member single'>
            <div class='col left'>
                <div class='thumbnail'>
                    thumbnail
                </div>
                <?php $this->the_contact_table(); ?>
            </div>
            <div class='col right'>

            </div>
        </div>      
    <?php
    $content = ob_get_contents();
    ob_end_clean();
    return $content;
}

UPDATE

I should have explained why i am doing this. I'm making a Wordpress plugin and want to control a post types output. So I am using a filter like below

public function filter_single($content){
     global $post;
     if ($post->post_type == 'staff-member') {

         $sm = new JM_Staff_Member($post);
         $content = $sm->get_single();
     }
     return $content;
}

So as you can see, I must return a string to the wordpress core

3 Answers
Related