DOMElement::removeAttribute
(PHP 5, PHP 7)
DOMElement::removeAttribute — Удаляет атрибут
Описание
public bool DOMElement::removeAttribute
( string
$name
)
Удаляет атрибут с именем name
из элемента.
Список параметров
-
name
-
Имя атрибута.
Возвращаемые значения
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Ошибки
-
DOM_NO_MODIFICATION_ALLOWED_ERR
-
Возникает, если атрибут доступен только для чтения.
Смотрите также
- DOMElement::hasAttribute() - Проверяет наличие атрибута
- DOMElement::getAttribute() - Возвращает значение атрибута
- DOMElement::setAttribute() - Устанавливает значение атрибута
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Обработка XML
- Document Object Model
- Функция DOMElement::__construct() - Создание нового объекта класса DOMElement
- Функция DOMElement::getAttribute() - Возвращает значение атрибута
- Функция DOMElement::getAttributeNode() - Возвращает узел атрибута
- Функция DOMElement::getAttributeNodeNS() - Возвращает узел атрибута
- Функция DOMElement::getAttributeNS() - Возвращает значение атрибута
- Функция DOMElement::getElementsByTagName() - Возвращает элементы по имени тэга
- Функция DOMElement::getElementsByTagNameNS() - Получение элементов по локальному имени в заданном пространстве имен
- Функция DOMElement::hasAttribute() - Проверяет наличие атрибута
- Функция DOMElement::hasAttributeNS() - Проверяет, существует ли заданный атрибут
- Функция DOMElement::removeAttribute() - Удаляет атрибут
- Функция DOMElement::removeAttributeNode() - Удаляет атрибут
- Функция DOMElement::removeAttributeNS() - Удаляет атрибут
- Функция DOMElement::setAttribute() - Устанавливает значение атрибута
- Функция DOMElement::setAttributeNode() - Добавляет новый узел атрибута к элементу
- Функция DOMElement::setAttributeNodeNS() - Добавляет новый атрибут к элементу
- Функция DOMElement::setAttributeNS() - Добавляет новый атрибут
- Функция DOMElement::setIdAttribute() - Объявляет атрибут с заданным именем ключевым атрибутом
- Функция DOMElement::setIdAttributeNode() - Объявляет заданный узал атрибута ключевым
- DOMElement::setIdAttributeNS
Коментарии
<?php
//Store your html into $html variable.
$html="<html>
<head>
<title>Rakesh Verma</title>
</head>
<body>
<a href='http://example.com'>Example</a>
<a href='http://google.com'>Google</a>
<a href='http://www.yahoo.com'>Yahoo</a>
</body>
</html>";
$dom = new DOMDocument();
$dom->loadHTML($html);
//Evaluate Anchor tag in HTML
$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate("/html/body//a");
for ($i = 0; $i < $hrefs->length; $i++) {
$href = $hrefs->item($i);
$url = $href->getAttribute('href');
//remove and set target attribute
$href->removeAttribute('target');
$href->setAttribute("target", "_blank");
$newURL=$url.".au";
//remove and set href attribute
$href->removeAttribute('href');
$href->setAttribute("href", $newURL);
}
// save html
$html=$dom->saveHTML();
echo $html;
?>
<?php
/*When I try to get a some attribute from not validated HTML or XML document, PHP dies with no errors in logs or output:
*/
function is_attribute_value($obj,$type,$value)
{
$_ret=false;
if($obj)
{
if($val=$obj->getAttribute($type))
{
if($val==$value)
{
$_ret=true;
}
}
}
return $_ret;
}
//And this check helped to me:
function is_attribute_value($obj,$type,$value)
{
$_ret=false;
if($obj->attributes)
{
if($val=$obj->getAttribute($type))
{
if($val==$value)
{
$_ret=true;
}
}
}
return $_ret;
}
?>