Notes
Заметки PHP
Найти английские символы в строке RegExp:
$login = "573f334ыва9"; if (preg_match('/[A-Za-z]/', $login)) { echo 'ok'; } else { echo 'fail'; }
Выведет ok
PHP RegExp как извлечь из строки только цифры:
$str = preg_replace("/[^0-9]/", '', $str);
Удалить пустые теги из XML
Если у вас simplexml тогда вам не повезло , потому что в нем не работает флаг LIBXML_NOEMPTYTAG. Придется удалять пустые теги через XPATH
foreach( $this->xml->xpath('/child::*//*[not(*) and not(text()[normalize-space()])]') as $emptyElement ) { unset( $emptyElement[0] ); }
Возможно также перевести simplexml to DOMDocument,(но тогда могут возникнуть проблемы с кодировкой):
$xml = new SimpleXMLElement(''); $child1 = $xml->addChild('child1'); $child1->addChild('child2', "value"); $child1->addChild('noValue', ''); $dom_sxe = dom_import_simplexml($xml); // Returns a DomElement object $dom_output = new DOMDocument('1.0'); $dom_output->formatOutput = true; $dom_sxe = $dom_output->importNode($dom_sxe, true); $dom_sxe = $dom_output->appendChild($dom_sxe); echo $dom_output->saveXML($dom_output, LIBXML_NOEMPTYTAG);
Афоризм дня:
Кто молчать не умеет, тот и говорить не способен. (620)
Leave a reply