summaryrefslogtreecommitdiffstats
path: root/user_guide_src/source/libraries/uri.rst
diff options
context:
space:
mode:
authorAndrey Andreev <narf@devilix.net>2019-09-19 14:08:45 +0200
committerAndrey Andreev <narf@devilix.net>2019-09-19 14:08:45 +0200
commitb73eb19aed66190c10c9cad476da7c36c271d6dc (patch)
treeb3d5d4f960569c30701934416d6d51628bde81a7 /user_guide_src/source/libraries/uri.rst
parent6e052d80b95b9332ed592cdc3431b5f9dc8dd250 (diff)
[ci skip] 3.1.11 release
Diffstat (limited to 'user_guide_src/source/libraries/uri.rst')
-rw-r--r--user_guide_src/source/libraries/uri.rst233
1 files changed, 0 insertions, 233 deletions
diff --git a/user_guide_src/source/libraries/uri.rst b/user_guide_src/source/libraries/uri.rst
deleted file mode 100644
index 4d38c1d22..000000000
--- a/user_guide_src/source/libraries/uri.rst
+++ /dev/null
@@ -1,233 +0,0 @@
-#########
-URI Class
-#########
-
-The URI Class provides methods that help you retrieve information from
-your URI strings. If you use URI routing, you can also retrieve
-information about the re-routed segments.
-
-.. note:: This class is initialized automatically by the system so there
- is no need to do it manually.
-
-.. contents::
- :local:
-
-.. raw:: html
-
- <div class="custom-index container"></div>
-
-***************
-Class Reference
-***************
-
-.. php:class:: CI_URI
-
- .. php:method:: segment($n[, $no_result = NULL])
-
- :param int $n: Segment index number
- :param mixed $no_result: What to return if the searched segment is not found
- :returns: Segment value or $no_result value if not found
- :rtype: mixed
-
- Permits you to retrieve a specific segment. Where n is the segment
- number you wish to retrieve. Segments are numbered from left to right.
- For example, if your full URL is this::
-
- http://example.com/index.php/news/local/metro/crime_is_up
-
- The segment numbers would be this:
-
- #. news
- #. local
- #. metro
- #. crime_is_up
-
- The optional second parameter defaults to NULL and allows you to set the return value
- of this method when the requested URI segment is missing.
- For example, this would tell the method to return the number zero in the event of failure::
-
- $product_id = $this->uri->segment(3, 0);
-
- It helps avoid having to write code like this::
-
- if ($this->uri->segment(3) === FALSE)
- {
- $product_id = 0;
- }
- else
- {
- $product_id = $this->uri->segment(3);
- }
-
- .. php:method:: rsegment($n[, $no_result = NULL])
-
- :param int $n: Segment index number
- :param mixed $no_result: What to return if the searched segment is not found
- :returns: Routed segment value or $no_result value if not found
- :rtype: mixed
-
- This method is identical to ``segment()``, except that it lets you retrieve
- a specific segment from your re-routed URI in the event you are
- using CodeIgniter's :doc:`URI Routing <../general/routing>` feature.
-
- .. php:method:: slash_segment($n[, $where = 'trailing'])
-
- :param int $n: Segment index number
- :param string $where: Where to add the slash ('trailing' or 'leading')
- :returns: Segment value, prepended/suffixed with a forward slash, or a slash if not found
- :rtype: string
-
- This method is almost identical to ``segment()``, except it
- adds a trailing and/or leading slash based on the second parameter.
- If the parameter is not used, a trailing slash added. Examples::
-
- $this->uri->slash_segment(3);
- $this->uri->slash_segment(3, 'leading');
- $this->uri->slash_segment(3, 'both');
-
- Returns:
-
- #. segment/
- #. /segment
- #. /segment/
-
- .. php:method:: slash_rsegment($n[, $where = 'trailing'])
-
- :param int $n: Segment index number
- :param string $where: Where to add the slash ('trailing' or 'leading')
- :returns: Routed segment value, prepended/suffixed with a forward slash, or a slash if not found
- :rtype: string
-
- This method is identical to ``slash_segment()``, except that it lets you
- add slashes a specific segment from your re-routed URI in the event you
- are using CodeIgniter's :doc:`URI Routing <../general/routing>`
- feature.
-
- .. php:method:: uri_to_assoc([$n = 3[, $default = array()]])
-
- :param int $n: Segment index number
- :param array $default: Default values
- :returns: Associative URI segments array
- :rtype: array
-
- This method lets you turn URI segments into an associative array of
- key/value pairs. Consider this URI::
-
- index.php/user/search/name/joe/location/UK/gender/male
-
- Using this method you can turn the URI into an associative array with
- this prototype::
-
- [array]
- (
- 'name' => 'joe'
- 'location' => 'UK'
- 'gender' => 'male'
- )
-
- The first parameter lets you set an offset, which defaults to 3 since your
- URI will normally contain a controller/method pair in the first and second segments.
- Example::
-
- $array = $this->uri->uri_to_assoc(3);
- echo $array['name'];
-
- The second parameter lets you set default key names, so that the array
- returned will always contain expected indexes, even if missing from the URI.
- Example::
-
- $default = array('name', 'gender', 'location', 'type', 'sort');
- $array = $this->uri->uri_to_assoc(3, $default);
-
- If the URI does not contain a value in your default, an array index will
- be set to that name, with a value of NULL.
-
- Lastly, if a corresponding value is not found for a given key (if there
- is an odd number of URI segments) the value will be set to NULL.
-
- .. php:method:: ruri_to_assoc([$n = 3[, $default = array()]])
-
- :param int $n: Segment index number
- :param array $default: Default values
- :returns: Associative routed URI segments array
- :rtype: array
-
- This method is identical to ``uri_to_assoc()``, except that it creates
- an associative array using the re-routed URI in the event you are using
- CodeIgniter's :doc:`URI Routing <../general/routing>` feature.
-
- .. php:method:: assoc_to_uri($array)
-
- :param array $array: Input array of key/value pairs
- :returns: URI string
- :rtype: string
-
- Takes an associative array as input and generates a URI string from it.
- The array keys will be included in the string. Example::
-
- $array = array('product' => 'shoes', 'size' => 'large', 'color' => 'red');
- $str = $this->uri->assoc_to_uri($array);
-
- // Produces: product/shoes/size/large/color/red
-
- .. php:method:: uri_string()
-
- :returns: URI string
- :rtype: string
-
- Returns a string with the complete URI. For example, if this is your full URL::
-
- http://example.com/index.php/news/local/345
-
- The method would return this::
-
- news/local/345
-
- .. php:method:: ruri_string()
-
- :returns: Routed URI string
- :rtype: string
-
- This method is identical to ``uri_string()``, except that it returns
- the re-routed URI in the event you are using CodeIgniter's :doc:`URI
- Routing <../general/routing>` feature.
-
- .. php:method:: total_segments()
-
- :returns: Count of URI segments
- :rtype: int
-
- Returns the total number of segments.
-
- .. php:method:: total_rsegments()
-
- :returns: Count of routed URI segments
- :rtype: int
-
- This method is identical to ``total_segments()``, except that it returns
- the total number of segments in your re-routed URI in the event you are
- using CodeIgniter's :doc:`URI Routing <../general/routing>` feature.
-
- .. php:method:: segment_array()
-
- :returns: URI segments array
- :rtype: array
-
- Returns an array containing the URI segments. For example::
-
- $segs = $this->uri->segment_array();
-
- foreach ($segs as $segment)
- {
- echo $segment;
- echo '<br />';
- }
-
- .. php:method:: rsegment_array()
-
- :returns: Routed URI segments array
- :rtype: array
-
- This method is identical to ``segment_array()``, except that it returns
- the array of segments in your re-routed URI in the event you are using
- CodeIgniter's :doc:`URI Routing <../general/routing>` feature.