function createStartElement($qname, $attributes = array(), $namespaceUri = null,
        $multiline = false, $indent = '_auto', $linebreak = "\n", 
        $sortAttributes = true)
    {
        // if no attributes hav been set, use empty attributes
        if (!isset($attributes) || !is_array($attributes)) {
            $attributes = array();
        }

        if ($namespaceUri != null) {
            $parts = XML_Util::splitQualifiedName($qname);
        }

        // check for multiline attributes
        if ($multiline === true) {
            if ($indent === '_auto') {
                $indent = str_repeat(' ', (strlen($qname)+2));
            }
        }

        if ($namespaceUri != null) {
            // is a namespace given
            if (isset($parts['namespace']) && !empty($parts['namespace'])) {
                $attributes['xmlns:' . $parts['namespace']] = $namespaceUri;
            } else {
                // define this Uri as the default namespace
                $attributes['xmlns'] = $namespaceUri;
            }
        }

        // create attribute list
        $attList = XML_Util::attributesToString($attributes, $sortAttributes, 
            $multiline, $indent, $linebreak);
        $element = sprintf('<%s%s>', $qname, $attList);
        return  $element;
    }
function createStartElement($qname, $attributes = array(), $namespaceUri = null,
        $multiline = false, $indent = '_auto', $linebreak = "\n", 
        $sortAttributes = true)
    {
        // if no attributes hav been set, use empty attributes
        if (!isset($attributes) || !is_array($attributes)) {
            $attributes = array();
        }

        if ($namespaceUri != null) {
            $parts = XML_Util::splitQualifiedName($qname);
        }

        // check for multiline attributes
        if ($multiline === true) {
            if ($indent === '_auto') {
                $indent = str_repeat(' ', (strlen($qname)+2));
            }
        }

        if ($namespaceUri != null) {
            // is a namespace given
            if (isset($parts['namespace']) && !empty($parts['namespace'])) {
                $attributes['xmlns:' . $parts['namespace']] = $namespaceUri;
            } else {
                // define this Uri as the default namespace
                $attributes['xmlns'] = $namespaceUri;
            }
        }

        // create attribute list
        $attList = XML_Util::attributesToString($attributes, $sortAttributes, 
            $multiline, $indent, $linebreak);
        $element = sprintf('<%s%s>', $qname, $attList);
        return  $element;
    }
function createStartElement ( $ qname , $ attributes = array ( ) , $ namespaceUri = null , $ multiline = false , $ indent = '_auto' , $ linebreak = "\n" , $ sortAttributes = true ) { // if no attributes hav been set, use empty attributes if ( ! isset ( $ attributes ) || ! is_array ( $ attributes ) ) { $ attributes = array ( ) ; } if ( $ namespaceUri != null ) { $ parts = XML_Util :: splitQualifiedName ( $ qname ) ; } // check for multiline attributes if ( $ multiline === true ) { if ( $ indent === '_auto' ) { $ indent = str_repeat ( ' ' , ( strlen ( $ qname ) + 2 ) ) ; } } if ( $ namespaceUri != null ) { // is a namespace given if ( isset ( $ parts [ 'namespace' ] ) && ! empty ( $ parts [ 'namespace' ] ) ) { $ attributes [ 'xmlns:' . $ parts [ 'namespace' ] ] = $ namespaceUri ; } else { // define this Uri as the default namespace $ attributes [ 'xmlns' ] = $ namespaceUri ; } } // create attribute list $ attList = XML_Util :: attributesToString ( $ attributes , $ sortAttributes , $ multiline , $ indent , $ linebreak ) ; $ element = sprintf ( '<%s%s>' , $ qname , $ attList ) ; return $ element ; }
create a start element

<code>
require_once 'XML/Util.php';

// create an XML start element:
$tag = XML_Util::createStartElement('myNs:myTag',
array('foo' => 'bar') ,'http://www.w3c.org/myNs#');
</code>

@param string $qname          qualified tagname (including namespace)
@param array  $attributes     array containg attributes
@param string $namespaceUri   URI of the namespace
@param bool   $multiline      whether to create a multiline tag where each
attribute gets written to a single line
@param string $indent         string used to indent attributes (_auto indents
attributes so they start at the same column)
@param string $linebreak      string used for linebreaks
@param bool   $sortAttributes Whether to sort the attributes or not

@return string XML start element
@access public
@static
@see createEndElement(), createTag()
create a start element