<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://kerkness.ca/kowiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://kerkness.ca/kowiki/feed.php">
        <title>Unofficial Kohana 3.0 Wiki</title>
        <description></description>
        <link>http://kerkness.ca/kowiki/</link>
        <image rdf:resource="http://kerkness.ca/kowiki/lib/images/favicon.ico" />
       <dc:date>2011-11-13T19:26:39+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=101&amp;rev=1261195731&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=advanced_queries_with_the_query_builder&amp;rev=1271901271&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=authentication_with_sprig_user_model&amp;rev=1257908276&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=authentication_with_sprig_user_model_using_sprig-auth&amp;rev=1284697442&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=building_complex_select_statements&amp;rev=1255821839&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=building_even_more_complex_select_statements&amp;rev=1262465367&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=comparison_of_various_orm_modules_available_in_kohana&amp;rev=1314438882&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=convert_a_non-24-hour_number_into_a_24-hour_number&amp;rev=1260481038&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=converting_unix_and_dos_timestamps&amp;rev=1260482868&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=creating_views_register_and_signin&amp;rev=1283033288&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=crud_with_the_query_builder&amp;rev=1266675138&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=determine_the_offset_in_seconds_between_time_zones&amp;rev=1260479069&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=example_of_a_multi-language_website&amp;rev=1257004827&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=extending_the_model_auth_user_class&amp;rev=1269075268&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=get_am_or_pm_based_on_a_given_hour&amp;rev=1260480594&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=get_an_array_of_years_between_a_starting_and_ending_year&amp;rev=1260481960&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=get_seconds_minutes_and_hours_in_a_minute_hour_or_a_day&amp;rev=1260481674&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=get_the_difference_between_a_given_time_and_now&amp;rev=1260482689&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=get_the_number_of_days_in_a_month&amp;rev=1260481287&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=get_the_number_of_months_in_a_year&amp;rev=1260481387&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=get_the_time_difference_between_two_timestamps&amp;rev=1260482419&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=getting_list_of_objects_find_all&amp;rev=1266482475&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=hmvc_in_kohana&amp;rev=1315417653&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_alternate_between_two_or_more_strings&amp;rev=1255655755&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_automatically_add_paragraph_tags_to_a_block_of_text&amp;rev=1270657750&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_automatically_convert_urls_into_links&amp;rev=1255656101&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_bind_and_set_data_to_a_view&amp;rev=1300713358&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_censor_a_string_for_bad_language&amp;rev=1255655884&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_close_a_database_connection&amp;rev=1257002049&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_convert_special_characters_to_html_entities&amp;rev=1255663499&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_checkbox&amp;rev=1255839309&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_file_upload_field&amp;rev=1282566971&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_form_buttons&amp;rev=1255842299&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_hidden_field&amp;rev=1255839256&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_password_field&amp;rev=1255839273&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_radio_button&amp;rev=1267536601&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_script_link&amp;rev=1255663742&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_select_field&amp;rev=1266668486&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_style_sheet_link&amp;rev=1255663707&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_text_or_image_link&amp;rev=1255663545&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_textarea_field&amp;rev=1255840857&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_an_email_link&amp;rev=1255663670&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_an_input_field&amp;rev=1255839240&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_and_use_a_controller&amp;rev=1321028727&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_and_use_a_view&amp;rev=1299866765&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_create_form_labels&amp;rev=1283596680&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_display_an_image&amp;rev=1255663773&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_enable_and_configure_the_database_module&amp;rev=1268504647&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_find_similar_words&amp;rev=1255655950&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_generate_a_random_string&amp;rev=1255655791&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_generate_query_strings&amp;rev=1255664828&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_generate_site_urls&amp;rev=1255668117&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_generate_url_friendly_title_strings&amp;rev=1255664966&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_get_byte_size_in_a_human_readable_format&amp;rev=1255656827&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_get_the_base_url_of_your_site&amp;rev=1255667843&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_limit_a_string_to_a_defined_number_of_characters&amp;rev=1256994292&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_limit_a_string_to_a_defined_word_count&amp;rev=1255663912&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_open_a_link_in_a_new_window&amp;rev=1255667099&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_open_and_close_a_form&amp;rev=1255823602&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_reduce_multiple_slashes_in_a_string_to_single_slashes&amp;rev=1255655833&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_render_an_email_address_that_is_difficult_to_detect&amp;rev=1257365562&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_serve_images_with_a_kohana_controller&amp;rev=1262456765&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_set_the_default_language&amp;rev=1266955862&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_use_kodocs_to_include_your_custom_files_in_the_kohana_user_guide_api_browser&amp;rev=1275077756&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_html_class_file&amp;rev=1255645856&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_pagination_module&amp;rev=1262528717&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_text_class&amp;rev=1255656904&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_work_with_attributes&amp;rev=1295524933&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=how_to_work_with_timezones&amp;rev=1316142701&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=hudson_ci_setup&amp;rev=1259947079&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=installing_from_github&amp;rev=1260636364&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=integrating_with_xajax&amp;rev=1316024578&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=integrating_with_xajax_post_0.5&amp;rev=1269998354&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=internationalization_settings_and_file_structure&amp;rev=1266958521&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=kohana_from_the_command_line_-_cli_usage&amp;rev=1262599881&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=making_remote_calls_in_kohana&amp;rev=1275648415&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=orm&amp;rev=1319073690&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=removing_the_index.php&amp;rev=1275478609&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=sessions_and_cookies&amp;rev=1274351185&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=setting_and_retrieving_language_strings&amp;rev=1266959376&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=setting_and_using_global_data_in_views&amp;rev=1300713427&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=setting_up_production_environment&amp;rev=1275754684&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=start&amp;rev=1319953898&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=translate_messages&amp;rev=1256826942&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=using_lighttpd&amp;rev=1307080877&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=using_the_auth_module_in_your_controllers&amp;rev=1276795539&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=validating_a_sprig_model&amp;rev=1258151032&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=validating_a_sprig_model_via_ajax&amp;rev=1279284966&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=validation&amp;rev=1286618343&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=what_version_of_kohana_should_i_use&amp;rev=1285928633&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=working_with_arrays_in_kohana&amp;rev=1261078523&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=working_with_atom_and_rss_feeds&amp;rev=1260568254&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=working_with_files&amp;rev=1300203167&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=working_with_numbers&amp;rev=1260624047&amp;do=diff"/>
                <rdf:li rdf:resource="http://kerkness.ca/kowiki/doku.php?id=working_with_the_inflector_class&amp;rev=1272292097&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://kerkness.ca/kowiki/lib/images/favicon.ico">
        <title>Unofficial Kohana 3.0 Wiki</title>
        <link>http://kerkness.ca/kowiki/</link>
        <url>http://kerkness.ca/kowiki/lib/images/favicon.ico</url>
    </image>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=101&amp;rev=1261195731&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-19T04:08:51+00:00</dc:date>
        <title>101</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=101&amp;rev=1261195731&amp;do=diff</link>
        <description>Overview

Not Another Framework

MVC and HMVC

Setup

Server Requirements

Installation

Configuration

Basic Usage (Show me. Don't tell me.)

Hello World

Building a Template Driven Web Site

Create The Template

Extending The Template Controller

Basic Page Controller

Using a Database

Database Configuration

CRUD with the Query Builder

Creating and Using Web Forms

Building a Form

Handling the Results

User Authentication

Auth Module Installation

User Login/Logout Forms

Creating a User …</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=advanced_queries_with_the_query_builder&amp;rev=1271901271&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-04-22T01:54:31+00:00</dc:date>
        <title>advanced_queries_with_the_query_builder</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=advanced_queries_with_the_query_builder&amp;rev=1271901271&amp;do=diff</link>
        <description>The Query Builder can make it quick and easy to build and run simple SQL queries. However some documentation was lacking on some of the more complex queries.

Statements and Expressions


Sometimes you want to run a quick update to increase a column, such as a views or count column. The SQL looks something like this</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=authentication_with_sprig_user_model&amp;rev=1257908276&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-11-11T02:57:56+00:00</dc:date>
        <title>authentication_with_sprig_user_model</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=authentication_with_sprig_user_model&amp;rev=1257908276&amp;do=diff</link>
        <description>The Sprig Module is a object modeling system for Kohana, inspired by Django.

Sprig comes with a predefined model for working with users and using the main Sprig class it's pretty simple to provide user authentication.

Note that the following code sets/uses a simple cookie holding an ID which is not a secure way to authenticate a user as it can be easily falsified. The code below is to demonstrate the control flow and what authentication with Sprig would look like. Choose a more secure method f…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=authentication_with_sprig_user_model_using_sprig-auth&amp;rev=1284697442&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-09-17T04:24:02+00:00</dc:date>
        <title>authentication_with_sprig_user_model_using_sprig-auth</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=authentication_with_sprig_user_model_using_sprig-auth&amp;rev=1284697442&amp;do=diff</link>
        <description>Short tutorial on how to use sprig-auth (by banks) on top of sprig (by shadowhand) to use the built-in Kohana Auth module.  sprig-auth implements a sprig driver to the Auth module and works great.  This tutorial is build from a bunch of sources in this wiki and the forums.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=building_complex_select_statements&amp;rev=1255821839&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-17T23:23:59+00:00</dc:date>
        <title>building_complex_select_statements</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=building_complex_select_statements&amp;rev=1255821839&amp;do=diff</link>
        <description>There are a variety of methods available for building complex select statements.

Selecting only specific columns
  DB::select('column1','column2')-&gt;from('table_name');  SELECT `column1`, `column2` FROM `table_name`
Selecting Column AS
  DB::select(array('column','my_column'))-&gt;from('table_name')-&gt;compile($db);  SELECT `column` AS `my_column` FROM `table_name`
join()
  DB::select()-&gt;from('table_name')-&gt;join('table_2')-&gt;on('table_2.table_id', '=', 'table_name.id');  SELECT * FROM `table_name` JOI…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=building_even_more_complex_select_statements&amp;rev=1262465367&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-01-02T20:49:27+00:00</dc:date>
        <title>building_even_more_complex_select_statements</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=building_even_more_complex_select_statements&amp;rev=1262465367&amp;do=diff</link>
        <description>If you are in need of doing sub-queries within SQL statement, you can do the following:


$query = DB::select
(
	'column_1',
	'column_2',
	array(
		DB::select('row_2')
		-&gt;from('table_2')
		-&gt;where('table_2.row_1', '=', DB::expr('column_2'),
		'subquery'
		)
	)
)
-&gt;from('table_1')
-&gt;where('column_1', '=', 'value')
-&gt;as_object()
-&gt;execute();</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=comparison_of_various_orm_modules_available_in_kohana&amp;rev=1314438882&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-08-27T09:54:42+00:00</dc:date>
        <title>comparison_of_various_orm_modules_available_in_kohana</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=comparison_of_various_orm_modules_available_in_kohana&amp;rev=1314438882&amp;do=diff</link>
        <description>Comparison of various ORM Modules available in Kohana (3?)

  ORM  Sprig  Jelly  Mango  Auto-Modeler  Version       Kohana Version  3.X  3.X  3.X  3.X  3.X  Status  Stable  Stable  Beta    License  New BSD License  MIT License  MIT License ( ref)   Features   Overview
 ORM library that are good at handling CRUD operations and excellent at generating, validating and processing HTML forms.
 
 Defined data types
 Sprig requires that the data types are defined in the model. There are already a range…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=convert_a_non-24-hour_number_into_a_24-hour_number&amp;rev=1260481038&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T21:37:18+00:00</dc:date>
        <title>convert_a_non-24-hour_number_into_a_24-hour_number</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=convert_a_non-24-hour_number_into_a_24-hour_number&amp;rev=1260481038&amp;do=diff</link>
        <description>The Date::adjust() method adjusts a non-24-hour number into a 24-hour number

Usage
  echo Date::adjust(8, 'PM');  20  echo Date::adjust(12, 'PM');  12  echo Date::adjust(9, 'PM');  21</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=converting_unix_and_dos_timestamps&amp;rev=1260482868&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T22:07:48+00:00</dc:date>
        <title>converting_unix_and_dos_timestamps</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=converting_unix_and_dos_timestamps&amp;rev=1260482868&amp;do=diff</link>
        <description>The Date::unix2dos() method will convert a UNIX formatted timestamp into a DOS formatted timestamp.

Usage
  Date::unix2dos(159084000);  2162688

The Date::dos2unix() method will convert a DOS formatted timestamp into a UNIX formatted timestamp.

Usage
  Date::dos2unix(2162688);  159084000</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=creating_views_register_and_signin&amp;rev=1283033288&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-08-28T22:08:08+00:00</dc:date>
        <title>creating_views_register_and_signin</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=creating_views_register_and_signin&amp;rev=1283033288&amp;do=diff</link>
        <description>This is the simplest one you can get:



&lt;?php echo form::open('auth/register') ?&gt;
  &lt;table&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;?php echo form::label('email','E-mail') ?&gt;&lt;/td&gt;
      &lt;td&gt;:&lt;/td&gt;
      &lt;td&gt;&lt;?php echo form::input('email','',array('id' =&gt; 'email')) ?&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;?php echo form::label('username','Username') ?&gt;&lt;/td&gt;
      &lt;td&gt;:&lt;/td&gt;
      &lt;td&gt;&lt;?php echo form::input('username','',array('id' =&gt; 'username')) ?&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;?php echo form::label('password','Password')…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=crud_with_the_query_builder&amp;rev=1266675138&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-02-20T14:12:18+00:00</dc:date>
        <title>crud_with_the_query_builder</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=crud_with_the_query_builder&amp;rev=1266675138&amp;do=diff</link>
        <description>The Kohana 3.0 Database Query Builder makes it easy to create CRUD statements for your database. The examples here use the following database structure.

  CREATE TABLE `users` (
    `id` int(10) unsigned NOT NULL auto_increment,
    `username` varchar(30) NOT NULL,
    `password` varchar(40) default NULL,
    PRIMARY KEY  (`id`)
  ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
Creating Database Records


Creating database records requires use of the DB::insert() method. The basic format…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=determine_the_offset_in_seconds_between_time_zones&amp;rev=1260479069&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T21:04:29+00:00</dc:date>
        <title>determine_the_offset_in_seconds_between_time_zones</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=determine_the_offset_in_seconds_between_time_zones&amp;rev=1260479069&amp;do=diff</link>
        <description>The Date::offset() method will return the total number of seconds between two different time zones.  If you only provide one time zone then this will be compared with your local time zone.

Usage
  echo Date::offset('America/New_York');  3600  echo Date::offset('Antarctica/Casey', 'America/New_York');  46800

For a complete list of time zones that are supported by PHP5 click here</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=example_of_a_multi-language_website&amp;rev=1257004827&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-31T16:00:27+00:00</dc:date>
        <title>example_of_a_multi-language_website</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=example_of_a_multi-language_website&amp;rev=1257004827&amp;do=diff</link>
        <description>First we add some config lines to tell what languages are available.


&lt;?php defined('SYSPATH') or die('No direct script access.');

return array(
    'language' =&gt; 'english',
    'language_abbr' =&gt; 'en',
    'lang_uri_abbr' =&gt; array(&quot;fr&quot; =&gt; &quot;french&quot;, &quot;en&quot; =&gt; &quot;english&quot;),
    'lang_ignore' =&gt; 'xx', //Note that it will look for a language named 'xx' in i18n. Therefore i18n:get('txt_sometext') will return 'txt_sometext'.
    'lang_desc' =&gt; array(&quot;en&quot; =&gt; &quot;English version&quot;, &quot;fr&quot;=&gt;&quot;French version&quot;),
)…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=extending_the_model_auth_user_class&amp;rev=1269075268&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-03-20T08:54:28+00:00</dc:date>
        <title>extending_the_model_auth_user_class</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=extending_the_model_auth_user_class&amp;rev=1269075268&amp;do=diff</link>
        <description>Kohana includes the Model_Auth_User class that extends the ORM. Your Model_User will only contains additional codes such as validating creation or your extended User columns of the 'users' table. This file goes in /application/classes/model/user.php.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=get_am_or_pm_based_on_a_given_hour&amp;rev=1260480594&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T21:29:54+00:00</dc:date>
        <title>get_am_or_pm_based_on_a_given_hour</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=get_am_or_pm_based_on_a_given_hour&amp;rev=1260480594&amp;do=diff</link>
        <description>The Date::ampm() method will return either AM or PM based on the given hour. Works for 24 hour clock only.

Usage
  echo Date::ampm(8);  AM  echo Date::ampm(11);  AM  echo Date::ampm(12);  PM  echo Date::ampm(18);  PM</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=get_an_array_of_years_between_a_starting_and_ending_year&amp;rev=1260481960&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T21:52:40+00:00</dc:date>
        <title>get_an_array_of_years_between_a_starting_and_ending_year</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=get_an_array_of_years_between_a_starting_and_ending_year&amp;rev=1260481960&amp;do=diff</link>
        <description>The Date::years() method will return an array of years between a starting and ending year. Uses the current year +/- 5 as the max/min.

Usage
  echo Date::years();  Array ( [2004] =&gt; 2004 [2005] =&gt; 2005 [2006] =&gt; 2006 [2007] =&gt; 2007 [2008] =&gt; 2008 [2009] =&gt; 2009 [2010] =&gt; 2010 [2011] =&gt; 2011 [2012] =&gt; 2012 [2013] =&gt; 2013 [2014] =&gt; 2014 )  echo Date::years(1975, 1981);  Array ( [1975] =&gt; 1975 [1976] =&gt; 1976 [1977] =&gt; 1977 [1978] =&gt; 1978 [1979] =&gt; 1979 [1980] =&gt; 1980 [1981] =&gt; 1981 )</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=get_seconds_minutes_and_hours_in_a_minute_hour_or_a_day&amp;rev=1260481674&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T21:47:54+00:00</dc:date>
        <title>get_seconds_minutes_and_hours_in_a_minute_hour_or_a_day</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=get_seconds_minutes_and_hours_in_a_minute_hour_or_a_day&amp;rev=1260481674&amp;do=diff</link>
        <description>The Date::seconds() method will return an array containing the total number of seconds in a minute incrementing by a step. 

Usage
  Date::seconds();  Array ( [0] =&gt; 00 [1] =&gt; 01 [2] =&gt; 02 [3] =&gt; 03 [4] =&gt; 04 [5] =&gt; 05 [6] =&gt; 06 [7] =&gt; 07 [8] =&gt; 08 [9] =&gt; 09 [10] =&gt; 10 [11] =&gt; 11 [12] =&gt; 12 [13] =&gt; 13 [14] =&gt; 14 [15] =&gt; 15 [16] =&gt; 16 [17] =&gt; 17 [18] =&gt; 18 [19] =&gt; 19 [20] =&gt; 20 [21] =&gt; 21 [22] =&gt; 22 [23] =&gt; 23 [24] =&gt; 24 [25] =&gt; 25 [26] =&gt; 26 [27] =&gt; 27 [28] =&gt; 28 [29] =&gt; 29 [30] =&gt; 30 [31] =&gt; 31…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=get_the_difference_between_a_given_time_and_now&amp;rev=1260482689&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T22:04:49+00:00</dc:date>
        <title>get_the_difference_between_a_given_time_and_now</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=get_the_difference_between_a_given_time_and_now&amp;rev=1260482689&amp;do=diff</link>
        <description>The Date::fuzzy_span() method will return the time difference between a given time and now in a 'fuzzy' way.

Usage
  Date::fuzzy_span(159084000);  several decades ago  Date::fuzzy_span(1258264800);  less than a month ago  Date::fuzzy_span(1261720800);  in less than a month</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=get_the_number_of_days_in_a_month&amp;rev=1260481287&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T21:41:27+00:00</dc:date>
        <title>get_the_number_of_days_in_a_month</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=get_the_number_of_days_in_a_month&amp;rev=1260481287&amp;do=diff</link>
        <description>The Date::days() method returns an array containing the total number of days in a given month.

Usage
  echo Date::days(5);  Array ( [1] =&gt; 1 [2] =&gt; 2 [3] =&gt; 3 [4] =&gt; 4 [5] =&gt; 5 [6] =&gt; 6 [7] =&gt; 7 [8] =&gt; 8 [9] =&gt; 9 [10] =&gt; 10 [11] =&gt; 11 [12] =&gt; 12 [13] =&gt; 13 [14] =&gt; 14 [15] =&gt; 15 [16] =&gt; 16 [17] =&gt; 17 [18] =&gt; 18 [19] =&gt; 19 [20] =&gt; 20 [21] =&gt; 21 [22] =&gt; 22 [23] =&gt; 23 [24] =&gt; 24 [25] =&gt; 25 [26] =&gt; 26 [27] =&gt; 27 [28] =&gt; 28 [29] =&gt; 29 [30] =&gt; 30 [31] =&gt; 31 ) 

You can optionally set the year.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=get_the_number_of_months_in_a_year&amp;rev=1260481387&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T21:43:07+00:00</dc:date>
        <title>get_the_number_of_months_in_a_year</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=get_the_number_of_months_in_a_year&amp;rev=1260481387&amp;do=diff</link>
        <description>The Date::months() method returns an array containing the total number of months in a year.

Usage
  echo Date::months(); Array ( [1] =&gt; 1 [2] =&gt; 2 [3] =&gt; 3 [4] =&gt; 4 [5] =&gt; 5 [6] =&gt; 6 [7] =&gt; 7 [8] =&gt; 8 [9] =&gt; 9 [10] =&gt; 10 [11] =&gt; 11 [12] =&gt; 12 )</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=get_the_time_difference_between_two_timestamps&amp;rev=1260482419&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-10T22:00:19+00:00</dc:date>
        <title>get_the_time_difference_between_two_timestamps</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=get_the_time_difference_between_two_timestamps&amp;rev=1260482419&amp;do=diff</link>
        <description>The Date::span() method will return the time difference between two timestamps in human readable format.

Usage
  echo Date::span(time(), time()+3600, 'hours');  1  Date::span(159084000, 227512800);  Array ( [years] =&gt; 2 [months] =&gt; 2 [weeks] =&gt; 0 [days] =&gt; 0 [hours] =&gt; 15 [minutes] =&gt; 24 [seconds] =&gt; 20 )  Date::span(159084000, 227512800, 'months,days');  Array ( [months] =&gt; 26 [days] =&gt; 0 )</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=getting_list_of_objects_find_all&amp;rev=1266482475&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-02-18T08:41:15+00:00</dc:date>
        <title>getting_list_of_objects_find_all</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=getting_list_of_objects_find_all&amp;rev=1266482475&amp;do=diff</link>
        <description>Mainly taken from this: &lt;http://forum.kohanaphp.com/comments.php?DiscussionID=3639&amp;page=1#Item_9&gt;



Get a list of objects
  // Load all articles
  $articles = Sprig::factory('article')-&gt;load(NULL, FALSE);  // Load the first 5 articles
  $articles = Sprig::factory('article')-&gt;load(NULL, 5);  // Load the first 5 articles ordered by published_date descending
  $query = DB::select()-&gt;order_by('published_date', 'DESC');
  $articles = Sprig::factory('article')-&gt;load($query, 5);
Looping through


Chec…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=hmvc_in_kohana&amp;rev=1315417653&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-09-07T17:47:33+00:00</dc:date>
        <title>hmvc_in_kohana</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=hmvc_in_kohana&amp;rev=1315417653&amp;do=diff</link>
        <description>Please note that this information is targeting version 3.0, not the current version 3.1!

One of the most powerful features in Kohana 3.0 is the ability to call another request at any time during the request flow. This layered MVC approach allows you to assemble a complex client tier and really harness the powerful benefits of object orientation.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_alternate_between_two_or_more_strings&amp;rev=1255655755&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T01:15:55+00:00</dc:date>
        <title>how_to_alternate_between_two_or_more_strings</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_alternate_between_two_or_more_strings&amp;rev=1255655755&amp;do=diff</link>
        <description>How to alternate between two or more strings


The Text::alternate() method accepts two or more parameter strings and will return an alternate string each time it is called.

Usage
  echo Text::alternate('You are cool','You are smart','You are funny');
  echo Text::alternate('You are nice','You are happy','You are stinky');
  echo Text::alternate('You are ugly','You are sleepy','You are bored');  You are cool
  You are happy
  You are bored</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_automatically_add_paragraph_tags_to_a_block_of_text&amp;rev=1270657750&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-04-07T16:29:10+00:00</dc:date>
        <title>how_to_automatically_add_paragraph_tags_to_a_block_of_text</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_automatically_add_paragraph_tags_to_a_block_of_text&amp;rev=1270657750&amp;do=diff</link>
        <description>The Html::auto_p() method is like nl2br() on steroids.  It adds &lt;br /&gt; and &lt;p&gt; tags to a block of text.

Usage
  $string = &quot;This is a block of
  text that has
  
  Some line breaks in it.&quot;; 
  
  echo Text::auto_p($string);  &lt;p&gt;This is a block of&lt;br&gt;
  text that has&lt;/p&gt;
  
  &lt;p&gt;Some line breaks in it.&lt;/p&gt;
Warning


Text::auto_p() is far from perfect. It parses HTML using regular expressions. HTML comments, attributes containing ”&lt;” or newlines can derail this function.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_automatically_convert_urls_into_links&amp;rev=1255656101&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T01:21:41+00:00</dc:date>
        <title>how_to_automatically_convert_urls_into_links</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_automatically_convert_urls_into_links&amp;rev=1255656101&amp;do=diff</link>
        <description>The Kohana Text Class has 3 methods which can convert URLs into links.


	*  Text::auto_link() will convert email and urls into links
	*  Text::auto_link_urls() will only convert urls into links
	*  Text::auto_link_emails() will only convert emails into links</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_bind_and_set_data_to_a_view&amp;rev=1300713358&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-03-21T13:15:58+00:00</dc:date>
        <title>how_to_bind_and_set_data_to_a_view</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_bind_and_set_data_to_a_view&amp;rev=1300713358&amp;do=diff</link>
        <description>A View on it's own is just a php script. In most cases you'll want to provide your view with dynamic content that it can display. You can set and bind dynamic data to your view several different ways.

Consider the following View in /application/views/pages/about.php</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_censor_a_string_for_bad_language&amp;rev=1255655884&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T01:18:04+00:00</dc:date>
        <title>how_to_censor_a_string_for_bad_language</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_censor_a_string_for_bad_language&amp;rev=1255655884&amp;do=diff</link>
        <description>How to censor a string for bad language


The Text::censor() method will filter out specific words from a string. The words to filter out are passed as an array parameter. The words are replaced by a defined replacement string and you have the option to replace the entire word or just partial.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_close_a_database_connection&amp;rev=1257002049&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-31T15:14:09+00:00</dc:date>
        <title>how_to_close_a_database_connection</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_close_a_database_connection&amp;rev=1257002049&amp;do=diff</link>
        <description>If you ever find yourself in a situation when you need to forcefully close a database connection ( perhaps when working with php-cli ) you have a couple of options.

  foreach(Database::$instances as $db) 
  { 
      $db-&gt;disconnect(); 
      unset($db); 
  } 
  Database::$instances = array();

OR just call</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_convert_special_characters_to_html_entities&amp;rev=1255663499&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:24:59+00:00</dc:date>
        <title>how_to_convert_special_characters_to_html_entities</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_convert_special_characters_to_html_entities&amp;rev=1255663499&amp;do=diff</link>
        <description>The Html::chars() method is similar to PHP's htmlspecialchars() function. There are some small differences.


	*  It will automatically use the UTF-8 character set in conversion (instead of ISO-8859-1).
	*  It will automatically translate both single and double quotes to HTML entities (instead of only double quotes).</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_checkbox&amp;rev=1255839309&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-18T04:15:09+00:00</dc:date>
        <title>how_to_create_a_checkbox</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_checkbox&amp;rev=1255839309&amp;do=diff</link>
        <description>The Form::checkbox() method works exactly the same as the Form::input() method except that it automatically sets the type attribute to checkbox and has an additional property which defines if the box is checked or not.

  echo Form::checkbox('name', 'yes', TRUE);  &lt;input type=&quot;checkbox&quot; name=&quot;name&quot; value=&quot;yes&quot; checked=&quot;1&quot; /&gt;

The fourth parameter accepts an array of attributes</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_file_upload_field&amp;rev=1282566971&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-08-23T12:36:11+00:00</dc:date>
        <title>how_to_create_a_file_upload_field</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_file_upload_field&amp;rev=1282566971&amp;do=diff</link>
        <description>The Form::file() method works exactly the same as the Form::input() method except that it automatically sets the type attribute to file and it doesn't accept a value parameter.


echo Form::file('name');

&lt;input type=&quot;file&quot; name=&quot;name&quot; /&gt;


The second parameter accepts an array of attributes</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_form_buttons&amp;rev=1255842299&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-18T05:04:59+00:00</dc:date>
        <title>how_to_create_a_form_buttons</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_form_buttons&amp;rev=1255842299&amp;do=diff</link>
        <description>Form buttons can be created by using both the Form::submit() method and the Form::button() method.

The Form::submit() is used to create a form submit button.

  echo Form::submit('name', 'Submit');  &lt;input type=&quot;submit&quot; name=&quot;name&quot; value=&quot;Submit&quot; /&gt;

The third parameter accepts an array of attributes</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_hidden_field&amp;rev=1255839256&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-18T04:14:16+00:00</dc:date>
        <title>how_to_create_a_hidden_field</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_hidden_field&amp;rev=1255839256&amp;do=diff</link>
        <description>The Form::hidden() method works exactly the same as the Form::input() method except that it automatically sets the type attribute to hidden.

  echo Form::hidden('name');  &lt;input type=&quot;hidden&quot; name=&quot;name&quot; /&gt;

Add the second parameter to declare a value</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_password_field&amp;rev=1255839273&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-18T04:14:33+00:00</dc:date>
        <title>how_to_create_a_password_field</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_password_field&amp;rev=1255839273&amp;do=diff</link>
        <description>The Form::password() method works exactly the same as the Form::input() method except that it automatically sets the type attribute to password.

  echo Form::password('name');  &lt;input type=&quot;password&quot; name=&quot;name&quot; /&gt;

Add the second parameter to declare a value</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_radio_button&amp;rev=1267536601&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-03-02T13:30:01+00:00</dc:date>
        <title>how_to_create_a_radio_button</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_radio_button&amp;rev=1267536601&amp;do=diff</link>
        <description>The Form::radio() method works exactly the same as the Form::checkbox() method except that it automatically sets the type attribute to radio.  The method only creates a single radio button so in order to create a group of buttons, just call the method more than once and use the same name.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_script_link&amp;rev=1255663742&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:29:02+00:00</dc:date>
        <title>how_to_create_a_script_link</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_script_link&amp;rev=1255663742&amp;do=diff</link>
        <description>The Html::script() method creates a link to a javascript.

Usage
  echo Html::script('media/js/demo/script.js');
  echo Html::script('http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js');  &lt;script type=&quot;text/javascript&quot; src=&quot;http://example.com/media/js/demo/script.js&quot;&gt;&lt;/script&gt;
  &lt;script type=&quot;text/javascript&quot; src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js&quot;&gt;&lt;/script&gt;

The Html::script() class also accepts an array of attributes and a boolean flag to determine i…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_select_field&amp;rev=1266668486&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-02-20T12:21:26+00:00</dc:date>
        <title>how_to_create_a_select_field</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_select_field&amp;rev=1266668486&amp;do=diff</link>
        <description>The Form::select() method can be used to create select field or drop down menu. It contains parameters for defining options and which option is selected.

  echo Form::select('name', array(
  	'standard'=&gt;'Standard Shipping',
  	'express'=&gt;'Express Shipping',
  	'international'=&gt;'International',
  ));  &lt;select name=&quot;name&quot;&gt;
  &lt;option value=&quot;standard&quot;&gt;Standard Shipping&lt;/option&gt;
  &lt;option value=&quot;express&quot;&gt;Express Shipping&lt;/option&gt;
  &lt;option value=&quot;international&quot;&gt;International&lt;/option&gt;
  &lt;/select&gt;

A…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_style_sheet_link&amp;rev=1255663707&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:28:27+00:00</dc:date>
        <title>how_to_create_a_style_sheet_link</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_style_sheet_link&amp;rev=1255663707&amp;do=diff</link>
        <description>The Html::style() method creates a link to a style sheet.

Usage
  echo Html::style('media/css/demo/style.css');  &lt;link type=&quot;text/css&quot; href=&quot;http://example.com/media/css/demo/style.css&quot; rel=&quot;stylesheet&quot; /&gt;

Html::style() accepts two parameters, attributes and a boolean flag to determine if you want to include the Kohana index file in the URI for the style sheet. This will make a difference if you choose to process your style sheets with a media controller.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_text_or_image_link&amp;rev=1255663545&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:25:45+00:00</dc:date>
        <title>how_to_create_a_text_or_image_link</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_text_or_image_link&amp;rev=1255663545&amp;do=diff</link>
        <description>The Html::anchor() method can be used to create an HTML anchor tag for linking to internal or external web pages.

Basic Usage
  echo Html::anchor('controller/action', 'My Link');
  echo Html::anchor('http://kohanaphp.com', 'Kohana PHP');  &lt;a href=&quot;http://example.com/controller/action&quot;&gt;My Link&lt;/a&gt;
  &lt;a href=&quot;http://kohanaphp.com&quot;&gt;Kohana PHP&lt;/a&gt;
Setting Attributes


Properties and attributes can be set for your link by declaring additional properties.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_textarea_field&amp;rev=1255840857&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-18T04:40:57+00:00</dc:date>
        <title>how_to_create_a_textarea_field</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_a_textarea_field&amp;rev=1255840857&amp;do=diff</link>
        <description>The Form::textarea() method works similar to the Form::input() method except that it allows for a fourth parameter to determine if existing HTML entities are encoded or not, the default is to convert everything.

  echo Form::textarea('name');  &lt;textarea name=&quot;name&quot;&gt;&lt;/textarea&gt;

Add the second parameter to declare a value</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_an_email_link&amp;rev=1255663670&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:27:50+00:00</dc:date>
        <title>how_to_create_an_email_link</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_an_email_link&amp;rev=1255663670&amp;do=diff</link>
        <description>The Html::mailto() method creates a link to an obfuscated version of an email address.

Usage
  echo Html::mailto('jimmy@fallon.org');  &lt;a href=&quot;&amp;#109;&amp;#097;&amp;#105;&amp;#108;&amp;#116;&amp;#111;&amp;#058;&amp;#106;im&amp;#109;y&amp;#64;f&amp;#97;l&amp;#x6c;o&amp;#110;.&amp;#x6f;rg&quot;&gt;&amp;#106;im&amp;#109;y&amp;#64;f&amp;#97;l&amp;#x6c;o&amp;#110;.&amp;#x6f;rg&lt;/a&gt;</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_an_input_field&amp;rev=1255839240&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-18T04:14:00+00:00</dc:date>
        <title>how_to_create_an_input_field</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_an_input_field&amp;rev=1255839240&amp;do=diff</link>
        <description>The Form::input() method can be used to create almost any type &lt;input&gt; tag. By default the method creates a Text input unless the type attribute is provided.

  echo Form::input('name');  &lt;input type=&quot;text&quot; name=&quot;name&quot; /&gt;

Add the second parameter to declare a value</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_and_use_a_controller&amp;rev=1321028727&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-11-11T16:25:27+00:00</dc:date>
        <title>how_to_create_and_use_a_controller</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_and_use_a_controller&amp;rev=1321028727&amp;do=diff</link>
        <description>A Controller is a class file that stands in between the models and the views in an application. It passes information on to the model when data needs to be changed and it requests information from the model when data needs to be loaded. Controllers then pass on the information of the model to the views where the final output can be rendered for the users.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_and_use_a_view&amp;rev=1299866765&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-03-11T18:06:05+00:00</dc:date>
        <title>how_to_create_and_use_a_view</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_and_use_a_view&amp;rev=1299866765&amp;do=diff</link>
        <description>Views are files that contain the display information for your application. This is most commonly HTML, CSS and JavaScript but can be anything you require such as XML or Json for AJAX output. The purpose of views is to keep this information separate from your application logic for easy reusability and cleaner code.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_create_form_labels&amp;rev=1283596680&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-09-04T10:38:00+00:00</dc:date>
        <title>how_to_create_form_labels</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_create_form_labels&amp;rev=1283596680&amp;do=diff</link>
        <description>The Form::label() method can be used to create form labels.

The first parameter

The first parameter is the label's for attribute. 
 
With the second parameter NULL (the default) this argument will also be used as the label's text with all non-word characters turned into spaces and title cased.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_display_an_image&amp;rev=1255663773&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:29:33+00:00</dc:date>
        <title>how_to_display_an_image</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_display_an_image&amp;rev=1255663773&amp;do=diff</link>
        <description>The Html::image() method creats an html img tag for displaying images.

Usage
  echo Html::image('media/img/icon.png');  &lt;img src=&quot;http://example.com/media/img/icon.png&quot; /&gt;

The Html::image() method also accepts attributes

  echo Html::image('media/img/icon.png', array('class'=&gt;'no_border'));  &lt;img src=&quot;http://example.com/media/img/icon.png&quot; class=&quot;no_border&quot; /&gt;</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_enable_and_configure_the_database_module&amp;rev=1268504647&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-03-13T18:24:07+00:00</dc:date>
        <title>how_to_enable_and_configure_the_database_module</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_enable_and_configure_the_database_module&amp;rev=1268504647&amp;do=diff</link>
        <description>Kohana 3.0 comes with a robust module to working with databases. By default the database module supports drivers for MySQL and PHP-PDO.

The database module is included with the Kohana 3.0 install but needs to be enabled before you can use it.  In your application/bootstrap.php file modify the call to the Kohana::modules() method to include the database module as in the following example.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_find_similar_words&amp;rev=1255655950&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T01:19:10+00:00</dc:date>
        <title>how_to_find_similar_words</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_find_similar_words&amp;rev=1255655950&amp;do=diff</link>
        <description>How to find similar words


The Text::similar() method searches through an array of words to find the most common string. It uses the first string in the array as the basis for the search.

Usage
  echo Text::similar( array('Help', 'Helium', 'Herman') );  He</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_generate_a_random_string&amp;rev=1255655791&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T01:16:31+00:00</dc:date>
        <title>how_to_generate_a_random_string</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_generate_a_random_string&amp;rev=1255655791&amp;do=diff</link>
        <description>How to Generate a Random String


The Text::random() method returns a random string of the type and length that is requested. The type of random strings that can be requested are:


	*  alnum : All letters and numbers
	*  alpha : Only letters, upper and lower case
	*  hexdec : Base 16 hexadecimal symbols ( 0123456789abcdef )
	*  numeric : Numbers Only
	*  nozero : Numbers but without any zeros
	*  distinct : Numbers but with no zeros and upper case letters</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_generate_query_strings&amp;rev=1255664828&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:47:08+00:00</dc:date>
        <title>how_to_generate_query_strings</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_generate_query_strings&amp;rev=1255664828&amp;do=diff</link>
        <description>The Url::query() method generates a query string by merging the current _GET array with an array of provided parameters. 

Usage
  // If your current Url is http://kerkness.ca/kohana?foo=bar
  echo Url::query();  ?foo=bar  echo Url::query(array('bar'=&gt;'foo'));  ?foo=bar&amp;bar=foo</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_generate_site_urls&amp;rev=1255668117&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T04:41:57+00:00</dc:date>
        <title>how_to_generate_site_urls</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_generate_site_urls&amp;rev=1255668117&amp;do=diff</link>
        <description>The Url::site() method lets you generate a fully qualified url for your web site.

Usage
  echo Url::site('controller/action');  /kohana/index.php/controller/action

If you need to use a fully qualified domain then set the second parameter to TRUE</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_generate_url_friendly_title_strings&amp;rev=1255664966&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:49:26+00:00</dc:date>
        <title>how_to_generate_url_friendly_title_strings</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_generate_url_friendly_title_strings&amp;rev=1255664966&amp;do=diff</link>
        <description>The Url::title() method generates a url friendly string. Note that non-ASCII characters should be transliterated before using this function.

Usage
  echo url::title('This is my title')  this-is-my-title</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_get_byte_size_in_a_human_readable_format&amp;rev=1255656827&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T01:33:47+00:00</dc:date>
        <title>how_to_get_byte_size_in_a_human_readable_format</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_get_byte_size_in_a_human_readable_format&amp;rev=1255656827&amp;do=diff</link>
        <description>The Html::bytes() method returns the byte size of a file in a human readable format. This method is based on original functions by Aidan Lister and Quentin Zervaas

Simple Usage
  echo Text::bytes(5500);
  echo Text::bytes(17139812000);  5.50 kB
  17.14 GB
Setting Maximum unit
  echo Text::bytes(81620000000, 'MB');  81620.00 MB
Setting 4 decimal accuracy
  echo Text::bytes(91711816100, null, '%01.4f %s', TRUE);  91.7118 GB
Setting 1 decimal accuracy, units in brackets, max unit in MB
  $size = d…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_get_the_base_url_of_your_site&amp;rev=1255667843&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T04:37:23+00:00</dc:date>
        <title>how_to_get_the_base_url_of_your_site</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_get_the_base_url_of_your_site&amp;rev=1255667843&amp;do=diff</link>
        <description>The Url::base() method provides you with the base url for your website.  The base url is the full domain and path to your Kohana index.php file.  

The base url can be defined with the property base_url when calling the Kohana::init() method in your application/bootstrap.php</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_limit_a_string_to_a_defined_number_of_characters&amp;rev=1256994292&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-31T13:04:52+00:00</dc:date>
        <title>how_to_limit_a_string_to_a_defined_number_of_characters</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_limit_a_string_to_a_defined_number_of_characters&amp;rev=1256994292&amp;do=diff</link>
        <description>How to limit a string to a defined number of characters


The Text::limit_chars() method limits a phrase to the given number of words.  The method accepts 4 parameters:


	*  The string that should be limited.
	*  The number of characters to limit the string to. Defaults to 100.
	*  A string to be appended to the end of the returned string. Default is NULL.
	*  A boolean to preserve words or not, which prevents the last word to be cut off somewhere in the middle. Default is FALSE.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_limit_a_string_to_a_defined_word_count&amp;rev=1255663912&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T03:31:52+00:00</dc:date>
        <title>how_to_limit_a_string_to_a_defined_word_count</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_limit_a_string_to_a_defined_word_count&amp;rev=1255663912&amp;do=diff</link>
        <description>The Text::limit_words() method limits a phrase to the given number of words.  The method accepts 3 parameters


	*  The string that should be limited.
	*  The number of words to limit the string to. Defaults to 100.
	*  A string to be appended to the end of the returned string. Default is NULL.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_open_a_link_in_a_new_window&amp;rev=1255667099&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T04:24:59+00:00</dc:date>
        <title>how_to_open_a_link_in_a_new_window</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_open_a_link_in_a_new_window&amp;rev=1255667099&amp;do=diff</link>
        <description>The HTML Class contains a static property called Html::$windowed_urls. By setting this property to true, all HTTP: and HTTPS: requests will have the attribute target=“_blank” automatically added.

Usage


If you want to open the odd link in a new window then just add the property 'target' to your anchor.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_open_and_close_a_form&amp;rev=1255823602&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-17T23:53:22+00:00</dc:date>
        <title>how_to_open_and_close_a_form</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_open_and_close_a_form&amp;rev=1255823602&amp;do=diff</link>
        <description>The Form::open() and Form::close() methods can be used to create opening and closing tags for a form.

Usage
  echo Form::open();
  echo Form::close();  &lt;form action=&quot;/controller/action&quot; method=&quot;post&quot; accept-charset=&quot;utf-8&quot;&gt;
  &lt;/form&gt;

When calling Form::open() you have the option of declaring a specific action and providing an array of attributes.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_reduce_multiple_slashes_in_a_string_to_single_slashes&amp;rev=1255655833&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T01:17:13+00:00</dc:date>
        <title>how_to_reduce_multiple_slashes_in_a_string_to_single_slashes</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_reduce_multiple_slashes_in_a_string_to_single_slashes&amp;rev=1255655833&amp;do=diff</link>
        <description>How to Reduce multiple slashes in a string to single slashes


The Text::reduce_slashes() method reduces multiple slashes in a string to single slashes

Usage
  echo Text::reduce_slashes('This //Is my string// With //Slashes');  This /Is my string/ With /Slashes</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_render_an_email_address_that_is_difficult_to_detect&amp;rev=1257365562&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-11-04T20:12:42+00:00</dc:date>
        <title>how_to_render_an_email_address_that_is_difficult_to_detect</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_render_an_email_address_that_is_difficult_to_detect&amp;rev=1257365562&amp;do=diff</link>
        <description>The Html::email() method creates an obfuscated version of an email address that changes all the time.

Usage
  echo Html::email('jimmy@fallon.org');  &amp;#x6a;im&amp;#x6d;&amp;#x79;@&amp;#x66;&amp;#x61;&amp;#108;&amp;#108;o&amp;#x6e;.&amp;#111;r&amp;#x67;</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_serve_images_with_a_kohana_controller&amp;rev=1262456765&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-01-02T18:26:05+00:00</dc:date>
        <title>how_to_serve_images_with_a_kohana_controller</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_serve_images_with_a_kohana_controller&amp;rev=1262456765&amp;do=diff</link>
        <description>If you want to serve images using a Kohana controller you can follow these steps.


	*  Define a Route that will catch all image requests
	*  Create a Controller_Images class for handling image requests
	*  Create an action for passing thru the image back to the user</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_set_the_default_language&amp;rev=1266955862&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-02-23T20:11:02+00:00</dc:date>
        <title>how_to_set_the_default_language</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_set_the_default_language&amp;rev=1266955862&amp;do=diff</link>
        <description>While it's simple to do, it might not be clear.  If you want to set ( or change ) the default language for your website you need to modify the static property $lang in the class i18n as in the following example.

  i18n::lang('ru-RU');  // sets the language to Russian

The best place to do this is in your application/bootstrap.php file.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_use_kodocs_to_include_your_custom_files_in_the_kohana_user_guide_api_browser&amp;rev=1275077756&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-05-28T20:15:56+00:00</dc:date>
        <title>how_to_use_kodocs_to_include_your_custom_files_in_the_kohana_user_guide_api_browser</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_use_kodocs_to_include_your_custom_files_in_the_kohana_user_guide_api_browser&amp;rev=1275077756&amp;do=diff</link>
        <description>Here are the steps to enable the Kohana User Guide in your application and to automatically include your custom code in the API that is built:

1) in bootstrap.php enable the userguide module
'userguide'  =&gt; MODPATH.'userguide',  // User guide and API documentation

2) You can now browse to the userguide in your application at
http://&lt;base_url&gt;/guide/

3) Include the following at the top of source files you want included in the API Documentation changing appropriate elements
&lt;?php defined('SYSPA…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_html_class_file&amp;rev=1255645856&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-15T22:30:56+00:00</dc:date>
        <title>how_to_use_the_html_class_file</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_html_class_file&amp;rev=1255645856&amp;do=diff</link>
        <description>The Kohana_HTML class is an HTML helper that aids in the creation of HTML elements.

Click here for the source file for these examples

How to convert special characters to HTML entites


The Html::chars() method is similar to PHP's htmlspecialchars() function. There are some small differences.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_pagination_module&amp;rev=1262528717&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-01-03T14:25:17+00:00</dc:date>
        <title>how_to_use_the_pagination_module</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_pagination_module&amp;rev=1262528717&amp;do=diff</link>
        <description>Kohana 3.0 comes with a module to assist with the pagination of database records. Pagination refers to the process of splitting database records over numerous pages and providing the user with links to access next or previous pages.

The following examples make use of the DB::select() query builder, however the Pagination module isn't tied to any type of data set. You can use the module to let users page through data regardless of the data source.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_text_class&amp;rev=1255656904&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-16T01:35:04+00:00</dc:date>
        <title>how_to_use_the_text_class</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_use_the_text_class&amp;rev=1255656904&amp;do=diff</link>
        <description>The Kohana_Text class is an Text helper that helps when working with strings.

Click here for the source file for these examples


	*  How to limit a string to a defined word count
	*  How to limit a string to a defined number of characters
	*  How to alternate between two or more strings
	*  How to generate a random string
	*  How to reduce multiple slashes in a string to single slashes
	*  How to censor a string for bad language
	*  How to find similar words
	*  How to automatically convert UR…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_work_with_attributes&amp;rev=1295524933&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-01-20T12:02:13+00:00</dc:date>
        <title>how_to_work_with_attributes</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_work_with_attributes&amp;rev=1295524933&amp;do=diff</link>
        <description>You'll notice that most all the methods in the Html Class and also the Form Class will accept an array of attributes. The Html::attributes() method compiles these attributes to a string.  Special characters in the attribute values are converted to HTML entities by Html::chars().</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=how_to_work_with_timezones&amp;rev=1316142701&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-09-16T03:11:41+00:00</dc:date>
        <title>how_to_work_with_timezones</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=how_to_work_with_timezones&amp;rev=1316142701&amp;do=diff</link>
        <description>This page is not Kohana-specific but I promised the forum folks that I would put this here if they helped me :)

Concepts

	*  Best Practices: link will get you thinking about timezones.  
	*  Do you need timezones?  This may help you classify what kind of times you are dealing with &lt;http://stackoverflow.com/questions/2532729/daylight-saving-time-and-timezone-best-practices/3269325#3269325&gt;</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=hudson_ci_setup&amp;rev=1259947079&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-04T17:17:59+00:00</dc:date>
        <title>hudson_ci_setup</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=hudson_ci_setup&amp;rev=1259947079&amp;do=diff</link>
        <description>How to setup Continuous Integration using Hudson for a KO3 based project

This page details how to setup Hudson for CI.  See the forum topic for more info.  This blog post is also a great resource for getting Hudson setup for a PHP project.

What is Continuous Integration?

	*  &lt;http://www.martinfowler.com/articles/continuousIntegration.html&gt;
	*  &lt;http://en.wikipedia.org/wiki/Continuous_Integration&gt;</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=installing_from_github&amp;rev=1260636364&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-12T16:46:04+00:00</dc:date>
        <title>installing_from_github</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=installing_from_github&amp;rev=1260636364&amp;do=diff</link>
        <description>The source code for Kohana 3.0 is hosted with GitHub.  To install Kohana using the github source code first you need to install git. 

Visit &lt;http://help.github.com&gt; for details on how to install git on your platform then follow these steps.

  git clone git://github.com/kohana/kohana.git
  cd kohana/
  git submodule init
  git submodule update
Adding Submodules

To add a new submodule complete the following steps:

1. run the following code - git submodule add repository path for each new submo…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=integrating_with_xajax&amp;rev=1316024578&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-09-14T18:22:58+00:00</dc:date>
        <title>integrating_with_xajax</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=integrating_with_xajax&amp;rev=1316024578&amp;do=diff</link>
        <description>Note:  There is a lot of problems with Xajax (see below), you should use Phery instead  
&lt;https://github.com/gahgneh/phery&gt; and the KO3 companion &lt;https://github.com/cambiata/kophery&gt;

Xajax


Xajax is a convenient PHP ajax library that simplifies a lot of ajax calls (vs raw jquery for example) and can be found at &lt;http://www.xajaxproject.org&gt;</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=integrating_with_xajax_post_0.5&amp;rev=1269998354&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-03-31T01:19:14+00:00</dc:date>
        <title>integrating_with_xajax_post_0.5</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=integrating_with_xajax_post_0.5&amp;rev=1269998354&amp;do=diff</link>
        <description>:!: :!: If you downloaded stable 0.5, use the instructions at Integrating with Xajax :!: :!:

:!: :!: The latest code in &lt;http://sourceforge.net/scm/?type=svn&amp;group_id=139736&gt; uses plugins and finalize classes so they cannot be extended :!: :!:

Integrating into Kohana


* application/bootstrap.php</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=internationalization_settings_and_file_structure&amp;rev=1266958521&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-02-23T20:55:21+00:00</dc:date>
        <title>internationalization_settings_and_file_structure</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=internationalization_settings_and_file_structure&amp;rev=1266958521&amp;do=diff</link>
        <description>Internationalization files can be found in the i18n directories. These directories can be found in system, application or modules directories. Kohana's own internationalization files can be found in the system directory. 

The formats

As of version 3.0.2 the language-region format is not the only (valid) option any more.
The culture is the combination of the country and the language of the user</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=kohana_from_the_command_line_-_cli_usage&amp;rev=1262599881&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-01-04T10:11:21+00:00</dc:date>
        <title>kohana_from_the_command_line_-_cli_usage</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=kohana_from_the_command_line_-_cli_usage&amp;rev=1262599881&amp;do=diff</link>
        <description>To call a Kohana v3 controller URI from the command line, you need to use the --uri argument.

For example:


php index.php --uri=welcome/index


This is effectively the same as calling:



http://example.com/index.php/welcome/index

or

http://example.com/welcome/index</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=making_remote_calls_in_kohana&amp;rev=1275648415&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-04T10:46:55+00:00</dc:date>
        <title>making_remote_calls_in_kohana</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=making_remote_calls_in_kohana&amp;rev=1275648415&amp;do=diff</link>
        <description>The Remote class provides remote server communication options using curl.

Checking the status of a Remote URL


The Remote::status() method can be used to return the status code for a URL

  echo Remote::status('http://www.kohanaphp.com');  200
Calling a Remote URL


The Remote::get() method can be used to return the output of a remote URL. The method accepts 2 parameters</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=orm&amp;rev=1319073690&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-10-20T01:21:30+00:00</dc:date>
        <title>orm</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=orm&amp;rev=1319073690&amp;do=diff</link>
        <description>Object Relational Mapping (ORM) allows manipulation and control of data within a database as though it was a PHP object. Once you define the relationships ORM allows you to pull data from your database, manipulate the data in any way you like and then save the result back to the database without the use of SQL. By creating relationships between models that follow convention over configuration, much of the repetition of writing queries to create, read, update and delete information from the datab…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=removing_the_index.php&amp;rev=1275478609&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-02T11:36:49+00:00</dc:date>
        <title>removing_the_index.php</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=removing_the_index.php&amp;rev=1275478609&amp;do=diff</link>
        <description>There are two steps to remove the index.php from the URL. 

The first step is by editing the bootstrap file. Look for the Kohana::init line in the boostrap file and add the index_file option:

  Kohana::init(array(
      'base_url'    =&gt; '/blog', // You need to edit this also to your needs!
      'index_file' =&gt; '',
  ));

At first you might think that's enough, but you also have to alter a line of code in the .htaccess file.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=sessions_and_cookies&amp;rev=1274351185&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-05-20T10:26:25+00:00</dc:date>
        <title>sessions_and_cookies</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=sessions_and_cookies&amp;rev=1274351185&amp;do=diff</link>
        <description>Kohana 3.0 provides a couple of classes that make it easy to work with both Cookies and Session. At a high level both Sessions and Cookies provide the same function. They allow the developer to store temporary or persistent information about a specific user's action for later retrieval.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=setting_and_retrieving_language_strings&amp;rev=1266959376&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-02-23T21:09:36+00:00</dc:date>
        <title>setting_and_retrieving_language_strings</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=setting_and_retrieving_language_strings&amp;rev=1266959376&amp;do=diff</link>
        <description>Setting language strings


Your translated strings are added in their own language or culture files (See Settings and file structure) 

File format:

For french speaking people all around the world

application/i18n/fr.php



&lt;?php defined('SYSPATH') or die('No direct script access.');

return array
(
	'French' =&gt; 'Français',
	'Hello, world!' =&gt; 'Bonjour, monde!',
); //End of application/i18n/fr.php</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=setting_and_using_global_data_in_views&amp;rev=1300713427&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-03-21T13:17:07+00:00</dc:date>
        <title>setting_and_using_global_data_in_views</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=setting_and_using_global_data_in_views&amp;rev=1300713427&amp;do=diff</link>
        <description>Your application may render several view files at once that need access to the same data. For example you may want to display a page title in both the header of your template and in the body of the page content. You can assign data to global variables using the View::set_global() and View::bind_global() methods.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=setting_up_production_environment&amp;rev=1275754684&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-05T16:18:04+00:00</dc:date>
        <title>setting_up_production_environment</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=setting_up_production_environment&amp;rev=1275754684&amp;do=diff</link>
        <description>Please note that this information refers to version 3.0!

There are a few things you'll want to do with your application before moving into production. 


	*  See the Configuration page in the docs. This covers most of the global settings that would change between environments. As a general rule, you should enable caching and disable profiling (Kohana::init settings) for production sites. Route caching can also help if you have a lot of routes.
	*  Catch all exceptions in application/bootstrap.p…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=start&amp;rev=1319953898&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-10-30T05:51:38+00:00</dc:date>
        <title>start</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=start&amp;rev=1319953898&amp;do=diff</link>
        <description>Please note that the information here (still) focus mainly on Kohana 3.0. 
There are important api changes in version 3.1. More information on upgrading from 3.0 to 3.1 can be found here: &lt;http://kohanaframework.org/3.1/guide/kohana/upgrading&gt;
Current Kohana version is 3.2, upgrade guide from 3.1 to 3.2 can be fonud here: &lt;http://kohanaframework.org/3.2/guide/kohana/upgrading&gt;</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=translate_messages&amp;rev=1256826942&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-10-29T14:35:42+00:00</dc:date>
        <title>translate_messages</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=translate_messages&amp;rev=1256826942&amp;do=diff</link>
        <description>Messages are used by validation error messages.
The files can be found in the messages directories. These directories can be found in system, application or modules directories. Kohana's own messages files can be found in the system directory.

Setting messages


Example of a messages file:</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=using_lighttpd&amp;rev=1307080877&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-06-03T06:01:17+00:00</dc:date>
        <title>using_lighttpd</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=using_lighttpd&amp;rev=1307080877&amp;do=diff</link>
        <description>In case you decided to use Lighttpd instead of Apache, here's the rewrite rule:

  url.rewrite-if-not-file = (
   &quot;^/(application|modules|system)/.*$&quot; =&gt; &quot;index.php/error/403&quot;, #provided you have error controller and it supports 403 error
   &quot;^/(.+)/?$&quot; =&gt; &quot;index.php/$1&quot;
  )</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=using_the_auth_module_in_your_controllers&amp;rev=1276795539&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-06-17T17:25:39+00:00</dc:date>
        <title>using_the_auth_module_in_your_controllers</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=using_the_auth_module_in_your_controllers&amp;rev=1276795539&amp;do=diff</link>
        <description>NOTE: Before you can use this tutorial, be sure to followed the previous one
&lt;http://kerkness.ca/wiki/doku.php?id=extending_the_model_auth_user_class&gt;

Creating our tables

If you haven't got the db tables yet, here is the MySQL code



CREATE TABLE IF NOT EXISTS `roles` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(32) NOT NULL,
  `description` varchar(255) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uniq_name` (`name`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ;

INSERT INT…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=validating_a_sprig_model&amp;rev=1258151032&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-11-13T22:23:52+00:00</dc:date>
        <title>validating_a_sprig_model</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=validating_a_sprig_model&amp;rev=1258151032&amp;do=diff</link>
        <description>A nice feature of Sprig models is the ability to hold validation information. Given the following model:

  class Model_Project extends Sprig {
  
      protected function _init()
      {
          $this-&gt;_fields += array(
              'id' =&gt; new Sprig_Field_Auto,
              'name' =&gt; new Sprig_Field_Char(array(
                  'max_length' =&gt; '32',
                  'unique' =&gt; TRUE,
              )),
              'description' =&gt; new Sprig_Field_Text,
          );
      }
  
  } // End…</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=validating_a_sprig_model_via_ajax&amp;rev=1279284966&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-07-16T12:56:06+00:00</dc:date>
        <title>validating_a_sprig_model_via_ajax</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=validating_a_sprig_model_via_ajax&amp;rev=1279284966&amp;do=diff</link>
        <description>custom essay papers writing service




I put together the following Controller(s) which makes it easy to Validate a field or field(s) via Ajax when using KO3 and Sprig. I thought it might be useful to others so here it is..

Controller_Service is a controller which makes sure that the given request is coming via ajax otherwise redirects to a default action.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=validation&amp;rev=1286618343&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-10-09T09:59:03+00:00</dc:date>
        <title>validation</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=validation&amp;rev=1286618343&amp;do=diff</link>
        <description>Note: In Kohana 3.1, Validation is handled differently, and the Validate class has been replaced with the Validation class.

The Validate class is used to validate any array of data following given rules. It is mainly used to validate forms $_POST data. The class has a few rules already available to us and allows user made callback functions. The class enables to affect each field of your array its own error message that you can then populate with your forms.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=what_version_of_kohana_should_i_use&amp;rev=1285928633&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-10-01T10:23:53+00:00</dc:date>
        <title>what_version_of_kohana_should_i_use</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=what_version_of_kohana_should_i_use&amp;rev=1285928633&amp;do=diff</link>
        <description>The Kohana PHP framework currently has 2 versions which are both under active development. These versions are known as Kohana 2.x and Kohana 3.x.  The upgrade changes are not trivial and the API has changed significantly. Therefore, these are not successive versions and for all purposes should be considered two different frameworks.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=working_with_arrays_in_kohana&amp;rev=1261078523&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-17T19:35:23+00:00</dc:date>
        <title>working_with_arrays_in_kohana</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=working_with_arrays_in_kohana&amp;rev=1261078523&amp;do=diff</link>
        <description>The Arr class provides several helper methods for working with arrays.

Get a Single Value From an Array


One of the most useful methods of the Arr class is the  Arr::get() method. This method can be used to check if a value is in an array, and return a default value if it is not in the array.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=working_with_atom_and_rss_feeds&amp;rev=1260568254&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-11T21:50:54+00:00</dc:date>
        <title>working_with_atom_and_rss_feeds</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=working_with_atom_and_rss_feeds&amp;rev=1260568254&amp;do=diff</link>
        <description>The Feed class provides a couple of methods for working with RSS and Atom feeds.

Parsing a Remote Feed


The Feed::parse() method will parse a remote feed into an array. This method requires SimpleXML to be installed.

The following example will load the Kohana Forum Atom feed into an array.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=working_with_files&amp;rev=1300203167&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-03-15T15:32:47+00:00</dc:date>
        <title>working_with_files</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=working_with_files&amp;rev=1300203167&amp;do=diff</link>
        <description>The File class provides a couple of methods that help when dealing with files.

Determining the Mime Type of a File


The File class provides two methods for determining a file's mime type. File::mime() as well as File::mime_by_ext().

File::mime() Usage


File::mime() takes the filename as the parameter and then tries to do some magic to determine the mime type. This method is not always going to be reliable.</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=working_with_numbers&amp;rev=1260624047&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2009-12-12T13:20:47+00:00</dc:date>
        <title>working_with_numbers</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=working_with_numbers&amp;rev=1260624047&amp;do=diff</link>
        <description>The Num class provides a couple of methods that help when dealing with numbers.

Determine the English Ordinal of a Number (th,st,nd,ect..)


The Num::ordinal() method returns the English ordinal suffix (th, st, nd, etc) of a number.

  echo Num::ordinal(1);  st  echo Num::ordinal(2);  nd  echo Num::ordinal(3);  rd  echo Num::ordinal(4);  th
How to Format Numbers and Currency


The Num::format() method can be used to return locale-aware number formatting. The method takes 3 properties:</description>
    </item>
    <item rdf:about="http://kerkness.ca/kowiki/doku.php?id=working_with_the_inflector_class&amp;rev=1272292097&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2010-04-26T14:28:17+00:00</dc:date>
        <title>working_with_the_inflector_class</title>
        <link>http://kerkness.ca/kowiki/doku.php?id=working_with_the_inflector_class&amp;rev=1272292097&amp;do=diff</link>
        <description>The Inflector class provides several unique methods that helps manipulate content.

Convert Words into a Plural or Singular Format


The Inflector class has two useful methods for converting words into their singular or plural format. Inflector::singular() and Inflector::plural().</description>
    </item>
</rdf:RDF>

