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);
Афоризм дня:
Кто боязливо заботится о том, как бы не потерять жизнь, никогда не будет радоваться ей. (629)
By den
On March 19, 2019