Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yii2
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Rotua Panjaitan
yii2
Commits
36e3b0a7
Commit
36e3b0a7
authored
Apr 06, 2014
by
Larry Ullman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
More minor edits
parent
3f2c48f3
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
7 deletions
+8
-7
helpers.md
docs/guide/helpers.md
+8
-7
No files found.
docs/guide/helpers.md
View file @
36e3b0a7
Helper Classes
Helper Classes
==============
==============
Yii provides many
helper classes to help simplify some
common coding tasks, such as string or array manipulations,
Yii provides many
classes that help simplify
common coding tasks, such as string or array manipulations,
HTML code generation, and so forth. These helper classes are organized under the
`yii\helpers`
namespace and
HTML code generation, and so forth. These helper classes are organized under the
`yii\helpers`
namespace and
are all static classes (meaning they contain only static properties and methods and should not be instantiated).
are all static classes (meaning they contain only static properties and methods and should not be instantiated).
You use a helper class by directly calling
its static method
:
You use a helper class by directly calling
one of its static methods
:
```
php
```
use yii\helpers\ArrayHelper;
use yii\helpers\ArrayHelper;
$c = ArrayHelper::merge($a, $b);
$c = ArrayHelper::merge($a, $b);
...
@@ -17,20 +18,20 @@ $c = ArrayHelper::merge($a, $b);
...
@@ -17,20 +18,20 @@ $c = ArrayHelper::merge($a, $b);
Extending Helper Classes
Extending Helper Classes
------------------------
------------------------
To make helper classes easier to extend, Yii breaks each into two classes: a base class (e.g.
`BaseArrayHelper`
)
To make helper classes easier to extend, Yii breaks each
helper class
into two classes: a base class (e.g.
`BaseArrayHelper`
)
and a concrete class (e.g.
`ArrayHelper`
). When you use a helper, you should only use the concrete version, never use the base class.
and a concrete class (e.g.
`ArrayHelper`
). When you use a helper, you should only use the concrete version, never use the base class.
If you want to customize a helper, perform the following steps (using
`ArrayHelper`
as an example):
If you want to customize a helper, perform the following steps (using
`ArrayHelper`
as an example):
1.
Name your class the same as the concrete class provided by Yii, including the namespace:
`yii\helpers\ArrayHelper`
1.
Name your class the same as the concrete class provided by Yii, including the namespace:
`yii\helpers\ArrayHelper`
2.
Extend your class from the base class:
`class ArrayHelper extends \yii\helpers\BaseArrayHelper`
2.
Extend your class from the base class:
`class ArrayHelper extends \yii\helpers\BaseArrayHelper`
.
3.
In your class, override any method or property as needed, or add new methods or properties
3.
In your class, override any method or property as needed, or add new methods or properties
.
4.
Tell your application to use your version of the helper class by including the following line of code in the bootstrap script:
4.
Tell your application to use your version of the helper class by including the following line of code in the bootstrap script:
```
php
```
php
Yii
::
$classMap
[
'yii\helpers\ArrayHelper'
]
=
'path/to/ArrayHelper.php'
;
Yii
::
$classMap
[
'yii\helpers\ArrayHelper'
]
=
'path/to/ArrayHelper.php'
;
```
```
Step 4 above will instruct the Yii class autoloader to load your version of the helper class instead of the oneincluded in the Yii distribution.
Step 4 above will instruct the Yii class autoloader to load your version of the helper class instead of the one
included in the Yii distribution.
> Tip: You can use `Yii::$classMap` to replace ANY core Yii class with your own customized version, not just helper classes.
> Tip: You can use `Yii::$classMap` to replace ANY core Yii class with your own customized version, not just helper classes.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment