Sunday, March 13, 2022

[FIXED] How to remove certain html elements from the html content retrieved dynamically using file_get_html and str_get_html in php?

Issue

I am trying to create an email template from existing html page where I am fetching content direct from html page and sending it via email. But the problem is I am getting certain buttons that I need to remove. Below is my code:

function HtmltoPhp_url($id=null)
    {
        App::import('Vendor', 'simple_html_dom');
        if($id!=null){
            $html = file_get_html('https://forexsense.in/members/order_progress/'.$id);
            foreach($html->find('.dtls') as $elem)
            return  str_get_html($elem);
        }
     
    }

Below is my code to set email content in cakephp:

 $email->viewVars(
                array(
                        'emailContent' => $this->phptopdf_url($order['ForexOrder']['id'])
                     )
            );

I am getting below output from below link: https://forexsense.in/members/order_progress/17

I want to remove Buttons from here in email content. Please assist!


Solution

You could convert your html to string and str_replace() the button for blank string like this:

$removedButton = str_replace('<a href="/location">myButton</a>', '', $htmlString);

Now your buttons should be removed.



Answered By - Jason Joslin

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.