@@ -802,7 +802,7 @@ PHP_METHOD(Dom_Element, removeAttributeNode)
802
802
Modern spec URL: https://dom.spec.whatwg.org/#concept-getelementsbytagname
803
803
Since:
804
804
*/
805
- static void dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAMETERS , bool modern )
805
+ static void dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAMETERS , zend_class_entry * iter_ce )
806
806
{
807
807
dom_object * intern , * namednode ;
808
808
zend_string * name ;
@@ -818,23 +818,19 @@ static void dom_element_get_elements_by_tag_name(INTERNAL_FUNCTION_PARAMETERS, b
818
818
819
819
DOM_GET_THIS_INTERN (intern );
820
820
821
- if (modern ) {
822
- php_dom_create_iterator (return_value , DOM_HTMLCOLLECTION , true);
823
- } else {
824
- php_dom_create_iterator (return_value , DOM_NODELIST , false);
825
- }
821
+ object_init_ex (return_value , iter_ce );
826
822
namednode = Z_DOMOBJ_P (return_value );
827
823
dom_namednode_iter (intern , 0 , namednode , NULL , name , NULL );
828
824
}
829
825
830
826
PHP_METHOD (DOMElement , getElementsByTagName )
831
827
{
832
- dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAM_PASSTHRU , false );
828
+ dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAM_PASSTHRU , dom_nodelist_class_entry );
833
829
}
834
830
835
831
PHP_METHOD (Dom_Element , getElementsByTagName )
836
832
{
837
- dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAM_PASSTHRU , true );
833
+ dom_element_get_elements_by_tag_name (INTERNAL_FUNCTION_PARAM_PASSTHRU , dom_html_collection_class_entry );
838
834
}
839
835
/* }}} end dom_element_get_elements_by_tag_name */
840
836
@@ -1229,7 +1225,7 @@ PHP_METHOD(Dom_Element, setAttributeNodeNS)
1229
1225
Modern spec URL: https://dom.spec.whatwg.org/#concept-getelementsbytagnamens
1230
1226
Since: DOM Level 2
1231
1227
*/
1232
- static void dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAMETERS , bool modern )
1228
+ static void dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAMETERS , zend_class_entry * iter_ce )
1233
1229
{
1234
1230
dom_object * intern , * namednode ;
1235
1231
zend_string * uri , * name ;
@@ -1254,23 +1250,19 @@ static void dom_element_get_elements_by_tag_name_ns(INTERNAL_FUNCTION_PARAMETERS
1254
1250
1255
1251
DOM_GET_THIS_INTERN (intern );
1256
1252
1257
- if (modern ) {
1258
- php_dom_create_iterator (return_value , DOM_HTMLCOLLECTION , true);
1259
- } else {
1260
- php_dom_create_iterator (return_value , DOM_NODELIST , false);
1261
- }
1253
+ object_init_ex (return_value , iter_ce );
1262
1254
namednode = Z_DOMOBJ_P (return_value );
1263
1255
dom_namednode_iter (intern , 0 , namednode , NULL , name , uri );
1264
1256
}
1265
1257
1266
1258
PHP_METHOD (DOMElement , getElementsByTagNameNS )
1267
1259
{
1268
- dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAM_PASSTHRU , false );
1260
+ dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAM_PASSTHRU , dom_nodelist_class_entry );
1269
1261
}
1270
1262
1271
1263
PHP_METHOD (Dom_Element , getElementsByTagNameNS )
1272
1264
{
1273
- dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAM_PASSTHRU , true );
1265
+ dom_element_get_elements_by_tag_name_ns (INTERNAL_FUNCTION_PARAM_PASSTHRU , dom_html_collection_class_entry );
1274
1266
}
1275
1267
/* }}} end dom_element_get_elements_by_tag_name_ns */
1276
1268
0 commit comments