Jump to content

If isset problem


graham23s

Recommended Posts

Hey Guys,

 

I'm using a simple function to retrieve data from an html page based on if a div exists or not.

function retrieveArticleBod($scrapedArticleURL)
{
	echo "<hr><b>DEBUG: </b>$scrapedArticleURL</hr>";
	$html = file_get_html($scrapedArticleURL);
	/* echo "<pre>"; print_r($html); */
	
	// CHECK IF THE BLOCK EDITOR DIV EXISTS
	if (isset($html->find('div[class=block_editor]')))
	{	
		foreach ($html->find('div[class=block_editor]') as $body)
		{
		 echo "<hr><b>DEBUG: </b>" . $body->innertext . "</hr>";
		 return $body->innertext; 
		}	
	 } else {
		foreach ($html->find('.content_desc_4 mt23 mb0') as $body)
		{
		 echo "<hr><b>DEBUG: </b>" . $body->innertext . "</hr>";
		 return $body->innertext; 
		}	
	}
	
} 

The first if if (isset($html->find('div[class=block_editor]'))) is causing the error Can't use method return value in write context, basically i'm trying to say if it exists run the code accordingly, i'm a touch rusty with php lol can anyone see what i have done wrong?

 

cheers guys

 

Graham

Link to comment
https://forums.phpfreaks.com/topic/281959-if-isset-problem/
Share on other sites

isset() is for checking if a variable has been assigned a value.

 

I don't know what your $html->find() function returns if the string isn't found but that is what you should be checking for. If it returns "false" you can

if (!$html->find('blah') {
...
}
Link to comment
https://forums.phpfreaks.com/topic/281959-if-isset-problem/#findComment-1448617
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.