file_get_contents(): stream does not support seeking / When was PHP behavior about this changed?

I had the same issue on my page when I moved it from one system to another, I was able to change the simple_html_dom.php file by removing the offset reference (didn't cause any further problems for me).

On line 75 of simple_html_dom.php:

$contents = file_get_contents($url, $use_include_path, $context, $offset);

I removed the reference to $offset:

$contents = file_get_contents($url, $use_include_path, $context);

No my page works fine. Not taking liability for anything else it breaks! :)


Change

function file_get_html(..., $offset = -1,...)

to

function file_get_html(..., $offset = 0,...)

in simple_html_dom.php


You don't need to edit the vendor files. Just change your requests from:

$html = HtmlDomParser::file_get_html( "https://www.google.com/");

to:

$html = HtmlDomParser::file_get_html( "https://www.google.com/", false, null, 0 );

The problem is that the default offset used by Simple HTML DOM is "-1" when you want it to be "0". Luckily it accepts it as a parameter, which means you can change it easily without needing to change the Simple HTML DOM source.

Note: This compatibility issue was fixed in v1.7+