4
4
5
5
use DOMDocument ;
6
6
use DOMElement ;
7
+ use RefactorStudio \PhpArrayToXml \Lib \XmlPatterns ;
7
8
8
9
class PhpArrayToXml
9
10
{
@@ -340,7 +341,7 @@ public function getCastNullValue()
340
341
*/
341
342
public static function hasValidXmlTagStartingChar ($ value = null )
342
343
{
343
- if (preg_match (self ::getValidXmlTagStartPattern (), $ value ) === 1 ) {
344
+ if (preg_match (XmlPatterns ::getValidXmlTagStartPattern (), $ value ) === 1 ) {
344
345
return true ;
345
346
}
346
347
return false ;
@@ -354,7 +355,7 @@ public static function hasValidXmlTagStartingChar($value = null)
354
355
*/
355
356
public static function isValidXmlTagChar ($ value = null )
356
357
{
357
- if (preg_match (self ::getValidXmlTagNameChar (), $ value ) === 1 ) {
358
+ if (preg_match (XmlPatterns ::getValidXmlTagNameChar (), $ value ) === 1 ) {
358
359
return true ;
359
360
}
360
361
return false ;
@@ -372,7 +373,7 @@ public static function isValidXmlTag($value = null)
372
373
return false ;
373
374
}
374
375
375
- if (preg_match (self ::getValidXmlTagNamePattern (), $ value ) === 1 ) {
376
+ if (preg_match (XmlPatterns ::getValidXmlTagNamePattern (), $ value ) === 1 ) {
376
377
return true ;
377
378
}
378
379
return false ;
@@ -398,50 +399,6 @@ public function toXmlString($array = [])
398
399
return $ this ->_doc ->saveXML ();
399
400
}
400
401
401
- /**
402
- * Get a regex pattern for valid tag names
403
- *
404
- * @return string
405
- */
406
- protected static function getValidXmlTagNamePattern ()
407
- {
408
- return '~
409
- # XML 1.0 Name symbol PHP PCRE regex <http://www.w3.org/TR/REC-xml/#NT-Name>
410
- (?(DEFINE)
411
- (?<NameStartChar> [:A-Z_a-z \\xC0- \\xD6 \\xD8- \\xF6 \\xF8- \\x{2FF} \\x{370}- \\x{37D} \\x{37F}- \\x{1FFF} \\x{200C}- \\x{200D} \\x{2070}- \\x{218F} \\x{2C00}- \\x{2FEF} \\x{3001}- \\x{D7FF} \\x{F900}- \\x{FDCF} \\x{FDF0}- \\x{FFFD} \\x{10000}- \\x{EFFFF}])
412
- (?<NameChar> (?&NameStartChar) | [. \\-0-9 \\xB7 \\x{0300}- \\x{036F} \\x{203F}- \\x{2040}])
413
- (?<Name> (?&NameStartChar) (?&NameChar)*)
414
- )
415
- ^(?&Name)$
416
- ~ux ' ;
417
- }
418
-
419
- /**
420
- * Get a regex pattern for valid tag chars
421
- *
422
- * @return string
423
- */
424
- protected static function getValidXmlTagNameChar ()
425
- {
426
- return '~
427
- (?(DEFINE)
428
- (?<NameStartChar> [:A-Z_a-z \\xC0- \\xD6 \\xD8- \\xF6 \\xF8- \\x{2FF} \\x{370}- \\x{37D} \\x{37F}- \\x{1FFF} \\x{200C}- \\x{200D} \\x{2070}- \\x{218F} \\x{2C00}- \\x{2FEF} \\x{3001}- \\x{D7FF} \\x{F900}- \\x{FDCF} \\x{FDF0}- \\x{FFFD} \\x{10000}- \\x{EFFFF}])
429
- (?<NameChar> (?&NameStartChar) | [. \\-0-9 \\xB7 \\x{0300}- \\x{036F} \\x{203F}- \\x{2040}])
430
- )
431
- ^(?&NameChar)$
432
- ~ux ' ;
433
- }
434
-
435
- /**
436
- * Get a regex pattern for valid tag starting characters
437
- *
438
- * @return string
439
- */
440
- protected static function getValidXmlTagStartPattern ()
441
- {
442
- return '~^([:A-Z_a-z \\xC0- \\xD6 \\xD8- \\xF6 \\xF8- \\x{2FF} \\x{370}- \\x{37D} \\x{37F}- \\x{1FFF} \\x{200C}- \\x{200D} \\x{2070}- \\x{218F} \\x{2C00}- \\x{2FEF} \\x{3001}- \\x{D7FF} \\x{F900}- \\x{FDCF} \\x{FDF0}- \\x{FFFD} \\x{10000}- \\x{EFFFF}])~ux ' ;
443
- }
444
-
445
402
/**
446
403
* Converts arrays to DOMDocument elements
447
404
*
0 commit comments