define('HDOM_TYPE_ELEMENT', 1); define('HDOM_TYPE_COMMENT', 2); define('HDOM_TYPE_TEXT', 3); define('HDOM_TYPE_ENDTAG', 4); define('HDOM_TYPE_ROOT', 5); define('HDOM_TYPE_UNKNOWN', 6); define('HDOM_QUOTE_DOUBLE', 0); define('HDOM_QUOTE_SINGLE', 1); define('HDOM_QUOTE_NO', 3); define('HDOM_INFO_BEGIN', 0); define('HDOM_INFO_END', 1); define('HDOM_INFO_QUOTE', 2); define('HDOM_INFO_SPACE', 3); define('HDOM_INFO_TEXT', 4); define('HDOM_INFO_INNER', 5); define('HDOM_INFO_OUTER', 6); define('HDOM_INFO_DISPLAY', 7); define('MAX_FILE_SIZE', 6000000); function file_get_html($url, $use_include_path = false, $context = null, $offset = 0, $maxLen = -1, $lowercase = true, $forceTagsClosed = true, $target_charset = DEFAULT_TARGET_CHARSET, $stripRN = true, $defaultBRText = DEFAULT_BR_TEXT, $defaultSpanText = DEFAULT_SPAN_TEXT) { if($maxLen <= 0) { $maxLen = MAX_FILE_SIZE; } $dom = new simple_html_dom(null, $lowercase, $forceTagsClosed, $target_charset, $stripRN, $defaultBRText, $defaultSpanText); $contents = file_get_contents($url, $use_include_path, $context, $offset, $maxLen); if (empty($contents) || strlen($contents) > $maxLen) { return false; } $dom->load($contents, $lowercase, $stripRN); return $dom; } function str_get_html($str, $lowercase = true, $forceTagsClosed = true, $target_charset = DEFAULT_TARGET_CHARSET, $stripRN = true, $defaultBRText = DEFAULT_BR_TEXT, $defaultSpanText = DEFAULT_SPAN_TEXT) { $dom = new simple_html_dom(null, $lowercase, $forceTagsClosed, $target_charset, $stripRN, $defaultBRText, $defaultSpanText); if (empty($str) || strlen($str) > MAX_FILE_SIZE) { return false; } $dom->load($str, $lowercase, $stripRN); return $dom; } function dump_html_tree($node, $show_attr = true, $deep = 0) { $node->dump($show_attr, $deep); } class simple_html_dom_node { public $nodetype = HDOM_TYPE_UNKNOWN; public $tag = 'unknown'; public $attr = array(); public $children = array(); public $nodes = array(); public $parent = null; public $_ = array(); public $tag_start = 0; private $dom = null; function __construct($dom) { $this->dom = $dom; $dom->nodes[] = $this; } function __destruct() { $this->clear(); } function __toString() { return $this->outertext(); } function clear() { $this->parent = null; $this->children = array(); $this->nodes = array(); } function parent($parent = null) { if ($parent !== null) { $this->parent = $parent; if (!in_array($this, $parent->children, true)) { $parent->children[] = $this; } } return $this->parent; } function has_child() { return !empty($this->children); } function children($idx = -1) { if ($idx === -1) { return $this->children; } if (isset($this->children[$idx])) { return $this->children[$idx]; } return null; } function first_child() { if (count($this->children) > 0) { return $this->children[0]; } return null; } function last_child() { if (($count = count($this->children)) > 0) { return $this->children[$count - 1]; } return null; } function next_sibling() { if ($this->parent === null) { return null; } $idx = 0; $count = count($this->parent->children); while ($idx < $count && $this->parent->children[$idx] !== $this) { ++$idx; } if (++$idx >= $count) { return null; } return $this->parent->children[$idx]; } function prev_sibling() { if ($this->parent === null) { return null; } $idx = 0; $count = count($this->parent->children); while ($idx < $count && $this->parent->children[$idx] !== $this) { ++$idx; } if (--$idx < 0) { return null; } return $this->parent->children[$idx]; } function find_ancestor_tag($tag) { global $debug_object; if (is_object($debug_object)) { $debug_object->debug_log_entry(1); } $ancestor = $this->parent; while ($ancestor !== null) { if (is_object($debug_object)) { $debug_object->debug_log(2, "ancestor tag: " . $ancestor->tag); } if ($ancestor->tag === $tag) { break; } $ancestor = $ancestor->parent; } return $ancestor; } function innertext() { if (isset($this->_[HDOM_INFO_INNER])) { return $this->_[HDOM_INFO_INNER]; } if (isset($this->_[HDOM_INFO_TEXT])) { return $this->dom->restore_noise($this->_[HDOM_INFO_TEXT]); } $ret = ''; foreach ($this->nodes as $n) { $ret .= $n->outertext(); } return $ret; } function outertext() { global $debug_object; if (is_object($debug_object)) { $text = ''; } if ($this->nodetype === HDOM_TYPE_ROOT) { return $this->innertext(); } if (isset($this->_[HDOM_INFO_OUTER])) { return $this->_[HDOM_INFO_OUTER]; } if (isset($this->_[HDOM_INFO_TEXT])) { return $this->dom->restore_noise($this->_[HDOM_INFO_TEXT]); } $ret = ''; if (isset($this->_[HDOM_INFO_BEGIN])) { $ret .= $this->dom->get_info_info($this, HDOM_INFO_BEGIN); } if (isset($this->_[HDOM_INFO_INNER])) { if ($this->tag !== 'br') { $ret .= $this->_[HDOM_INFO_INNER]; } } else { foreach ($this->nodes as $n) { $ret .= $n->outertext(); } } if (isset($this->_[HDOM_INFO_END])) { $ret .= $this->dom->get_info_info($this, HDOM_INFO_END); } return $ret; } function text() { if (isset($this->_[HDOM_INFO_TEXT])) { return $this->dom->restore_noise($this->_[HDOM_INFO_TEXT]); } switch ($this->nodetype) { case HDOM_TYPE_COMMENT: return ''; case HDOM_TYPE_UNKNOWN: return ''; } if (strcasecmp($this->tag, 'script') === 0) { return ''; } if (strcasecmp($this->tag, 'style') === 0) { return ''; } $ret = ''; foreach ($this->nodes as $n) { $ret .= $n->text(); } return $ret; } function xmltext() { $ret = $this->innertext(); $ret = str_replace(' ', '', $ret); return strip_tags($ret); } function __get($name) { if (isset($this->attr[$name])) { return $this->convert_text($this->attr[$name]); } switch ($name) { case 'outertext': return $this->outertext(); case 'innertext': return $this->innertext(); case 'text': return $this->text(); case 'xmltext': return $this->xmltext(); default: return array_key_exists($name, $this->attr); } } function __set($name, $value) { global $debug_object; if (is_object($debug_object)) { $debug_object->debug_log_entry(1); } switch ($name) { case 'outertext': return $this->_[HDOM_INFO_OUTER] = $value; case 'innertext': return $this->_[HDOM_INFO_INNER] = $value; default: return $this->attr[$name] = $value; } } function __isset($name) { switch ($name) { case 'outertext': return true; case 'innertext': return true; case 'text': return true; case 'xmltext': return true; } return isset($this->attr[$name]); } function __unset($name) { if (isset($this->attr[$name])) { unset($this->attr[$name]); } } function convert_text($text) { global $debug_object; if (is_object($debug_object)) { $debug_object->debug_log_entry(1); } $source_charset = $this->dom->_charset; $target_charset = $this->dom->_target_charset; if ($source_charset === $target_charset) { return $text; } return $text; } function find($selector, $idx = null, $lowercase = false) { $selectors = $this->parse_selector($selector); if (($count = count($selectors)) === 0) { return array(); } $found_keys = array(); for ($c = 0; $c < $count; ++$c) { if (($levle = count($selectors[$c])) === 0) { return array(); } if (!isset($this->_[HDOM_INFO_BEGIN])) { return array(); } $head = array($this->tag_start => $this); for ($l = 0; $l < $levle; ++$l) { $ret = array(); foreach ($head as $k => $v) { $v->seek($selectors[$c][$l], $ret, $lowercase); } $head = $ret; } foreach ($head as $k => $v) { if (!isset($found_keys[$k])) { $found_keys[$k] = $v; } } } if ($idx === null) { return array_values($found_keys); } if ($idx < 0) { $idx = count($found_keys) + $idx; } $values = array_values($found_keys); return isset($values[$idx]) ? $values[$idx] : null; } protected function seek($selector, &$ret, $lowercase = false) { global $debug_object; if (is_object($debug_object)) { $debug_object->debug_log_entry(1); } list($tag, $key, $val, $exp, $no_key) = $selector; if ($tag && $key && is_numeric($key)) { $count = 0; foreach ($this->children as $c) { if ($tag === '*' || $c->tag === $tag) { if ($count === (int)$key) { $ret[$c->tag_start] = $c; return; } ++$count; } } return; Dünyadan Türkiyeden ve Ispartadan Haberiniz Olsun
Ajans Isparta

SİTEMİZ BAKIMDADIR

Şu anda bakımdayız.Kısa süre sonra geri döneceğiz.Daha sonra yeniden deneyiniz.

İLETİŞİM