Welcome Guest, Not a member yet? Register   Sign In
CLASS attribute on <li/> using HTML Helper
#2

I don't have the original, but I'd imagine it would be something like this:
PHP Code:
if ( ! function_exists('ul'))

{
    /**
     * Unordered List
     *
     * Generates an HTML unordered list from an single or multi-dimensional array.
     *
     * @param    array
     * @param    mixed
     * @param    mixed
     * @return    string
     */
    function ul($list$attributes ''$liAttributes '')
    {
        return _list('ul'$list$attributes0$liAttributes);
    }
}

// ------------------------------------------------------------------------

if ( ! function_exists('ol'))
{
    /**
     * Ordered List
     *
     * Generates an HTML ordered list from an single or multi-dimensional array.
     *
     * @param    array
     * @param    mixed
     * @param    mixed
     * @return    string
     */
    function ol($list$attributes ''$liAttributes '')
    {
        return _list('ol'$list$attributes0$liAttributes);
    }
}

// ------------------------------------------------------------------------

if ( ! function_exists('_list'))
{
    /**
     * Generates the list
     *
     * Generates an HTML ordered list from an single or multi-dimensional array.
     *
     * @param    string
     * @param    mixed
     * @param    mixed
     * @param    int
     * @param    mixed
     * @return    string
     */
    function _list($type 'ul'$list = array(), $attributes ''$depth 0$liAttributes '')
    {
        // If an array wasn't submitted there's nothing to do...
        if ( ! is_array($list))
        {
            return $list;
        }

        // Set the indentation based on the depth
        $out str_repeat(' '$depth)
            // Write the opening list tag
            .'<'.$type._stringify_attributes($attributes).">\n";


        // Cycle through the list elements.  If an array is
        // encountered we will recursively call _list()

        static $_last_list_item '';
        foreach ($list as $key => $val)
        {
            $_last_list_item $key;

            $out .= str_repeat(' '$depth 2).'<li'._stringify_attributes($liAttributes).'>';

            if ( ! is_array($val))
            {
                $out .= $val;
            }
            else
            
{
                $out .= $_last_list_item."\n"._list($type$val''$depth 4).str_repeat(' '$depth 2);
            }

            $out .= "</li>\n";
        }

        // Set the indentation for the closing tag and apply it
        return $out.str_repeat(' '$depth).'</'.$type.">\n";
    }

Reply


Messages In This Thread
RE: CLASS attribute on <li/> using HTML Helper - by mwhitney - 08-18-2015, 06:16 AM



Theme © iAndrew 2016 - Forum software by © MyBB