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
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
PSDI Army
yii2
Commits
e6a353f9
Commit
e6a353f9
authored
Feb 13, 2014
by
Qiang Xue
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added helpers.md
parent
20aff533
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
41 additions
and
2 deletions
+41
-2
helpers.md
docs/guide/helpers.md
+38
-0
index.md
docs/guide/index.md
+3
-2
No files found.
docs/guide/helpers.md
0 → 100644
View file @
e6a353f9
Helper Classes
==============
Yii provides many helper classes to simplify commonly needed coding tasks, such as string/array manipulations,
HTML code generation, etc. These helper classes are mostly organized under the
`yii\helpers`
namespace, and
they 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, like the following,
~~~
use yii\helpers\ArrayHelper;
$c = ArrayHelper::merge($a, $b);
~~~
Extending Helper Classes
------------------------
Static classes are typically hard to customize because when you use them, you already hardcode the class names
in your code, and as a result your customized versions will not get used unless you do some global replacement in your code.
To solve this problem, Yii breaks each helper into two classes: one is base class (e.g.
`BaseArrayHelper`
)
and the other the concrete class (e.g.
`ArrayHelper`
). When you use a helper, you should only use the concrete version.
If you want to customize a helper, e.g.,
`ArrayHelper`
, do the following steps:
1.
Name your class the same as the concrete class provided by Yii, including the namespace part, e.g.,
`yii\helpers\ArrayHelper`
;
2.
Extend your class from the base class, e.g.,
`class ArrayHelper extends \yii\helpers\BaseArrayHelper`
;
3.
In your class, override any method or property as your want, or add new methods or properties;
4.
In your application that you plan to use your own version of the helper class, include the following
line of code in the bootstrap script:
```
php
Yii
::
$classMap
[
'yii\helpers\ArrayHelper'
]
=
'path/to/ArrayHelper.php'
;
```
The Step 4 above will instruct Yii class autoloader to load your version of the helper instead of the one
included in the Yii distribution.
docs/guide/index.md
View file @
e6a353f9
...
...
@@ -41,12 +41,13 @@ Database
-
[
Basics
](
database-basics.md
)
- Connecting to a database, basic queries, transactions and schema manipulation
-
[
Query Builder
](
query-builder.md
)
- Querying the database using a simple abstraction layer
-
[
ActiveRecord
](
active-record.md
)
- The active record ORM, retrieving and manipulating
s
records and defining relations
-
[
Database Migration
](
console-migrate.md
)
- Versioning your database with database migration
s
-
[
ActiveRecord
](
active-record.md
)
- The active record ORM, retrieving and manipulating records and defining relations
-
[
Database Migration
](
console-migrate.md
)
- Versioning your database with database migration
Developers Toolbox
------------------
-
[
Helper Classes
](
helpers.md
)
-
[
Automatic Code Generation
](
gii.md
)
-
[
Debug toolbar and debugger
](
module-debug.md
)
-
[
Error Handling
](
error.md
)
...
...
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