Error messages in Polish language for CodeIgniter 4 Validation class and use example

Error messages in Polish language for CodeIgniter 4 Validation class and use example

Created:07 Apr 2023 11:45:35

Error messages in Polish language for CodeIgniter 4 Validation class and use example

have been using CodeIgniter 4 for a lot over the last year. Some stuff I have built with it, like blogs and websites, was for English-only speaking users, but there were also modules for web applications in Polish language. Obviously any website or a web application is just a smaller or a larger script, and as such it (usually) needs some input data. Any user input needs validating, and if data is not what's expected from the point of view of the author of the script, a useful feedback should be returned, so that another, hopefully a correct submission can made.

CodeIgniter 4 makes validating input data a relatively straightforward process thanks to its Validation class. However, if errors were detected and the feedback is to be given in a language other than English, a bit of configuration tweaking and a set of translated error messages is needed.

In this entry I provide translations of error messages for Validation class in Polish, describe how to configure the framework to use the messages, give an example of validating user input and show how to obtain error messages the set language.

Error messages for CI4 Web Framework Validation class in Polish


 * This file is NOT a part of CodeIgniter 4 Web Framework.
 * (c) Author: Sylwester Wojnowski <>

// Validation language settings
return [
	// Core Messages
	'noRuleSets'            => 'No określono reguł validacji w konfiguracji walidacji.',
	'ruleNotFound'          => 'Reguła {0} nie mogła zostać znaleziona.',
	'groupNotFound'         => 'Grupa reguł {0} jest niepoprawna.',
	'groupNotArray'         => 'Grupa reguł {0} musi być w formie tablicy.',
	'invalidTemplate'       => '{0} jest niepoprawnym szablonem.',

	// Rule Messages
	'alpha'                 => 'Pole {field} może zawierać wyłącznie znaki alfabetyczne.',
	'alpha_dash'            => 'Pole {field} może zawierać wyłącznie znaki alfabetyczne, numerycznye, podkreślnik i myślnik.',
	'alpha_numeric'         => 'Pole {field} może zawierać wyłącznie znaki alfanumeryczne.',
	'alpha_numeric_punct'   => 'Pole {field} może zawierać wyłącznie znaki alfanumeryczne, odstęp, oraz  ~ ! # $ % & * - _ + = | : . .',
	'alpha_numeric_space'   => 'Pole {field} może zawierać wyłącznie znaki alfanumeryczne i odstęp.',
	'alpha_space'           => 'Pole {field} może zawierać wyłącznie znaki alfabetyczne i odstęp.',
	'decimal'               => 'Pole {field} musi zawierać liczbę dziesiętną.',
	'differs'               => 'Pole {field} musi zawierać ciąg znaków inny niż ciąg znaków w polu {param}.',
	'equals'                => 'Pole {field} musi zawierać dokładnie ciąg znaków: {param}.',
	'exact_length'          => 'Pole {field} musi zawierać dokladnie {param} znaków.',
	'greater_than'          => 'Pole {field} musi zawierać liczbę większą od {param}.',
	'greater_than_equal_to' => 'Pole {field} musi zawierać liczbę równą lub większą od {param}.',
	'hex'                   => 'Pole {field} może zawierać wyłącznie znaki dostępne w systemie heksadecymalnym.',
	'in_list'               => 'Pole {field} musi zawierać jeden z ciąg znaków z tej listy: {param}.',
	'integer'               => 'Pole {field} musi zawierać liczbę całkowitą.',
	'is_natural'            => 'Pole {field} musi zawierać liczbę naturalną.',
	'is_natural_no_zero'    => 'Pole {field} musi zawierać liczbę naturalną większą od zera.',
	'is_not_unique'         => 'Pole {field} musi zawierać wartość poprzednio istniejącą w bazie danych.',
	'is_unique'             => 'Pole {field} musi zawierać unikalną wartość.',
	'less_than'             => 'Pole {field} musi zawierać liczbę mniejszą od {param}.',
	'less_than_equal_to'    => 'Pole {field} musi zawierać liczbę równą lub mniejszą od {param}.',
	'matches'               => 'Ciąg znaków w polu {field} musi odpowiadać dokładnie ciągowi znaków w polu {param}.',
	'max_length'            => 'Ciąg znaków w polu {field} nie może być dłuższy niż {param} znaków.',
	'min_length'            => 'Pole {field} musi zawierać co najmniej {param} znaków.',
	'not_equals'            => 'Pole {field} nie może zawierać tej samej wartości jak pole: {param}.',
	'not_in_list'           => 'Wartość pola {field} nie może być na liście: {param}.',
	'numeric'               => 'Pole {field} musi zawierać wyłącznie liczby.',
	'regex_match'           => 'Pole {field} zawiera ciąg znaków w niewłaściwym formacie.',
	'required'              => 'Pole {field} jest wymagane.',
	'required_with'         => 'Pole {field} jest wymagane kiedy pole {param} posiada wartość.',
	'required_without'      => 'Pole {field} kiedy pole {param} nie ma wartości.',
	'string'                => 'Pole {field} musi zawierać poprawny ciąg znakóœ.',
	'timezone'              => 'Pole {field} musi zawierać poprawną strefę czasu.',
	'valid_base64'          => 'Pole {field} musi zawierać porawny ciąg znaków zakodowanych w bazie 64.',
	'valid_email'           => 'Pole {field} musi zawierać poprawny adres mailowy.',
	'valid_emails'          => 'Pole {field} musi zawierać wyłącznie poprawne adresy email.',
	'valid_ip'              => 'Pole {field} musi zawierać porawny adres IP.',
	'valid_url'             => 'Pole {field} musi zawierać poprawny adres URL.',
	'valid_date'            => 'Pole {field} musi zawierać poprawną datę.',

	// Credit Cards
	'valid_cc_num'          => '{field} musi zawierać poprawny numer cc karty kredytowej.',

	// Files
	'uploaded'              => 'Plik {field} jest nieprawnym plikiem wgrania.',
	'max_size'              => 'Plik {field} jest zbyt duży.',
	'is_image'              => 'Plik {field} nie jest poprawnym, załadowanym plikiem.',
	'mime_in'               => 'Plik {field} nie posiada poprawnego typu MIME.',
	'ext_in'                => 'Plik {field} ma niepoprawne rozszerzenie.',
	'max_dims'              => 'Plik {field} ma zbyt duże wymiary lub jest nieprawnym plikiem graficznym.',


  • 1. If directory app/Languages/pl does not exist, create it.
  • 2. Create file Validation.php in the directory.
  • 3. Copy and paste error messages from above into the file and save it.


1. Open app/Config/App.php file and set the following properties in it as follows:

public $defaultLocale = 'pl-PL';
public $negotiateLocale = true;
public $supportedLocales = ['pl'];

2. Save the file.

Running validations and retrieving translated error messages

Assuming you're doing your user input data validation in a controller, here is an example how to perform a basic validation and get errors if input data is not what's expected.

// some dummy user input:
$userinput = [
  'userName' => ''

//Get access to the validation object
$validation =  \Config\Services::validation();

// get validation rules ready
$rules = [
  'userName' => [
    'rules' => 'required|min_length[2]|max_length[50]|regex_match[[a-zA-Z][a-zA-Z0-9-_]{1,49}]',
    'label' => 'Imię i nazwisko'

// Set validation rules
$validation -> setRules($rules);

// set default errors array
$errors = [];

// Run validation on $userInput and obtain errors
if($validation -> run($userinput){
  // no errors in input data found
} else {
  // errors found
  $errors = $validation -> getErrors();

If any errors are found, messages for them will be provided in Polish rather than English language.

Every error message in $errors should have userInput replaced by "Imię i nazwisko" now. If you want to preserve userName key in your error messages, remove label key from $rules array for every rule.


Happy validating user input with CodeIgniter and until the next time!

This post was updated on 07 Apr 2023 13:29:52

Tags:  CodeIgniter 

Author, Copyright and citation


Sylwester Wojnowski

Author of the this article - Sylwester Wojnowski - is a sWWW web developer. He has been writing computer code for the websites and web applications since 1998.


©Copyright, 2023 Sylwester Wojnowski. This article may not be reproduced or published as a whole or in parts without permission from the author. If you share it, please give author credit and do not remove embedded links.

Computer code, if present in the article, is excluded from the above and licensed under GPLv3.


Cite this article as:

Wojnowski, Sylwester. "Error messages in Polish language for CodeIgniter 4 Validation class and use example." From sWWW - Code For The Web .

Add Comment

Allowed BB Code - style tags: [b][/b], [i][/i], [code=text][/code],[code=javascript][/code],[code=php][/code],[code=bash][/code],[code=css][/code],[code=html][/code]

I constent to processing my data given through this form for purposes of a reply by the administrator of this website.

Recent Comments

Nobody has commented on this post yet. Be first!