Código PHP:
$html = file_get_contents('http://www.url.com/');
$htmlDoc = new DomDocument();
$htmlDoc->formatOutput = true;
$res = @$htmlDoc->loadHTML($html);
$div = $htmlDoc->getElementsByTagName("div");
foreach ($div as $nombres) {
$clas=$nombres->getAttribute("class"); //Ojo a esto
if($clas== "classicCompact"){
echo $clas=$nombres->getAttribute("class"); //Esto no es necesario asignarlo de nuevo porque ya lo hiciste arriba
$form=$clas->getElementsByTagName("form"); //Ojo a esto tambien
foreach($form as $for){
echo $for->getAttributes("id");
}
}
}
Luego de que comparas a ver si el nombre de la clase es "classicCompact", tratas de acceder al formulario de esta manera: $form=$clas->getElementsByTagName("form");
Sin embargo, $clas no contiene el DIV con dicha clase, sino que contiene LOS ATRIBUTOS, porque anteriormente hiciste:
echo $clas=$nombres->getAttribute("class");
Para acceder al formulario, debes hacer $form = $nombres->getElementByTagName("form"), en vez de $form=$clas->getElementsByTagName("form")