---
layout: default
title: The Fragment component
redirect_from:
- /5.0/components/fragment/
---
# The Fragment component
The library provides a `Fragment` class to ease fragment creation and manipulation.
## Creating a new object
~~~php
submitted string is normalized to be RFC3986 compliant.
If the submitted value is not valid a League\Uri\Components\Exception exception is thrown.
The `League\Uri\Components\Exception` extends PHP's SPL `InvalidArgumentException`.
## Properties and methods
This URI component object only exposes the [package common API](/components/1.0/api/).
## Usage
~~~php
isNull(); //returns false
$fragment->isEmpty(); //return false
echo $fragment->getContent(Fragment::RFC3986_ENCODING); //display '%E2%82%AC'
echo $fragment->getContent(Fragment::RFC3987_ENCODING); //display '€'
echo $fragment->getContent(Fragment::NO_ENCODING); //display '€'
echo $fragment; //display '%E2%82%AC'
echo $fragment->getUriComponent(); //display '#%E2%82%AC'
$new_fragment = $fragment->getContent(null);
$new_fragment->isNull(); //returns true
$new_fragment->isEmpty(); //return true
echo $new_fragment->getContent(); //display null
echo $new_fragment; //display ''
echo $new_fragment->getUriComponent(); //display ''
$alt_fragment = $fragment->getContent('');
$alt_fragment->isNull(); //returns false
$alt_fragment->isEmpty(); //return true
echo $alt_fragment->getContent(); //display ''
echo $alt_fragment; //display ''
echo $alt_fragment->getUriComponent(); //display '#'
~~~
The delimiter # is not part of the component value and must not be added.
If the submitted value is not valid a League\Uri\Components\Exception exception is thrown.