php-src/ext/dom
Niels Dossche ed916214c4
Avoid additional allocation in Document\createElementNS (#14071)
For the following benchmark code:
```php
$dom = DOM\XMLDocument::createEmpty();
for ($i = 0; $i < 1000*100; $i++) $dom->createElementNS("urn:a", "thisisaveryverylongname");
```

We obtain the following on an i7-4790:
```
Benchmark 1: ./sapi/cli/php bench.php
  Time (mean ± σ):      34.5 ms ±   1.2 ms    [User: 31.4 ms, System: 2.9 ms]
  Range (min … max):    32.4 ms …  39.3 ms    84 runs

Benchmark 2: ./sapi/cli/php_old bench.php
  Time (mean ± σ):      36.6 ms ±   1.6 ms    [User: 33.6 ms, System: 2.9 ms]
  Range (min … max):    34.3 ms …  45.3 ms    80 runs

Summary
  ./sapi/cli/php bench.php ran
    1.06 ± 0.06 times faster than ./sapi/cli/php_old bench.php
```
2024-04-29 08:39:44 +02:00
..
lexbor Update Lexbor (#14032) 2024-04-22 23:19:42 +02:00
tests Make (DOM)XPath::quote only accept strings without NULL bytes (#13960) 2024-04-14 21:16:07 +02:00
attr.c Implement HTMLCollection::namedItem() 2024-04-14 14:45:45 +02:00
cdatasection.c Use BAD_CAST consistently 2024-03-10 11:08:46 +01:00
characterdata.c Fix 32-bit DOM characterdata failures (#13663) 2024-03-11 21:16:13 +01:00
comment.c Use BAD_CAST consistently 2024-03-10 11:08:46 +01:00
config.m4 Implement HTMLCollection::namedItem() 2024-04-14 14:45:45 +02:00
config.w32 Implement HTMLCollection::namedItem() 2024-04-14 14:45:45 +02:00
CREDITS
document.c Avoid additional allocation in Document\createElementNS (#14071) 2024-04-29 08:39:44 +02:00
documentfragment.c Use BAD_CAST consistently 2024-03-10 11:08:46 +01:00
documenttype.c Use common helper macro for getting the node in property handlers 2024-03-10 11:08:46 +01:00
dom_ce.h [RFC] Add a way to opt-in ext/dom spec compliance (#13031) 2024-03-09 16:56:00 +01:00
dom_iterators.c Fix GH-13863: Removal during NodeList iteration breaks loop 2024-04-10 19:07:59 +02:00
dom_properties.h Use common helper macro for getting the node in property handlers 2024-03-10 11:08:46 +01:00
domexception.c Change stricterror type to bool 2024-03-10 11:08:46 +01:00
domexception.h Update http->https in license (#6945) 2021-05-06 12:16:35 +02:00
domimplementation.c Use BAD_CAST consistently 2024-03-10 11:08:46 +01:00
element.c Use common helper macro for getting the node in property handlers 2024-03-10 11:08:46 +01:00
entity.c Use common helper macro for getting the node in property handlers 2024-03-10 11:08:46 +01:00
entityreference.c Use BAD_CAST consistently 2024-03-10 11:08:46 +01:00
html5_parser.c Be specific for the namespace of the id attribute (#14060) 2024-04-28 11:40:54 +02:00
html5_parser.h [RFC] Add a way to opt-in ext/dom spec compliance (#13031) 2024-03-09 16:56:00 +01:00
html5_serializer.c Fix serialization of entity references in attributes (#13884) 2024-04-05 19:58:01 +02:00
html5_serializer.h [RFC] Add a way to opt-in ext/dom spec compliance (#13031) 2024-03-09 16:56:00 +01:00
html_collection.c Support named items in dimension handling for HTMLCollection 2024-04-14 14:46:04 +02:00
html_collection.h Support named items in dimension handling for HTMLCollection 2024-04-14 14:46:04 +02:00
html_document.c Cleanup dom_html_document_encoding_write() (#13788) 2024-03-23 22:17:58 +01:00
internal_helpers.h [RFC] Add a way to opt-in ext/dom spec compliance (#13031) 2024-03-09 16:56:00 +01:00
namednodemap.c Remove duplicated code for entity vs notation handling 2024-04-03 18:15:43 +02:00
namespace_compat.c [RFC] Add a way to opt-in ext/dom spec compliance (#13031) 2024-03-09 16:56:00 +01:00
namespace_compat.h [RFC] Add a way to opt-in ext/dom spec compliance (#13031) 2024-03-09 16:56:00 +01:00
node.c Get rid of remaining usages of zval_try_get_string() (#14041) 2024-04-24 23:47:10 +02:00
nodelist.c Support named items in dimension handling for HTMLCollection 2024-04-14 14:46:04 +02:00
nodelist.h Support named items in dimension handling for HTMLCollection 2024-04-14 14:46:04 +02:00
notation.c Use common helper macro for getting the node in property handlers 2024-03-10 11:08:46 +01:00
parentnode.c Fix argument signedness of dom_sanity_check_node_list_types() (#13875) 2024-04-03 18:18:24 +02:00
php_dom.c Support named items in dimension handling for HTMLCollection 2024-04-14 14:46:04 +02:00
php_dom.h Split off nodelist header components to nodelist.h 2024-04-14 14:45:46 +02:00
php_dom.stub.php Make documentURI and URL not readonly (#13982) 2024-04-17 17:35:29 +02:00
php_dom_arginfo.h Make documentURI and URL not readonly (#13982) 2024-04-17 17:35:29 +02:00
processinginstruction.c Use common helper macro for getting the node in property handlers 2024-03-10 11:08:46 +01:00
serialize_common.h [RFC] Add a way to opt-in ext/dom spec compliance (#13031) 2024-03-09 16:56:00 +01:00
text.c Use common helper macro for getting the node in property handlers 2024-03-10 11:08:46 +01:00
xml_common.h Fix GH-13764: xsl cannot build on PHP 8.4 (#13770) 2024-03-20 19:03:09 +01:00
xml_document.c Use true instead of 1 with php_dom_throw_error 2024-03-10 11:08:46 +01:00
xml_serializer.c Fix serialization of entity references in attributes (#13884) 2024-04-05 19:58:01 +02:00
xml_serializer.h [RFC] Add a way to opt-in ext/dom spec compliance (#13031) 2024-03-09 16:56:00 +01:00
xpath.c Make (DOM)XPath::quote only accept strings without NULL bytes (#13960) 2024-04-14 21:16:07 +02:00
xpath_callbacks.c Implement request #71571: XSLT processor should provide option to change maxDepth (#13731) 2024-03-31 21:21:23 +02:00
xpath_callbacks.h [RFC] Improve callbacks in ext/dom and ext/xsl (#12627) 2024-01-13 00:00:26 +01:00