Yii 1.1.11

Yii PHP рдлреНрд░реЗрдорд╡рд░реНрдХ рдЯреАрдо рдиреЗ рд╕рдВрд╕реНрдХрд░рдг 1.1.11 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реМ рд╕реЗ рдЕрдзрд┐рдХ рд╕реБрдзрд╛рд░ рдФрд░ рдмрдЧ рдлрд┐рдХреНрд╕ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдпрд╣ рд░рд┐рд▓реАрдЬрд╝ рд╡рд┐рд╢реЗрд╖ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ Yii рдХреЛрдб рдХреЗ GitHub рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдкрд╣рд▓рд╛ рд╣реИ ред рд╕рдореБрджрд╛рдп рдиреЗ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рд╡рд╛рд╕рди рд▓рд┐рдпрд╛ рдФрд░ рд╕рднреА рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓ рджрд┐рдпрд╛ , рдкреБрд▓-рдЕрдиреБрд░реЛрдз рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ, рдлрд┐рдХреНрд╕, рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдФрд░ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд░реВрдк рдореЗрдВ рднреЗрдЬ рджрд┐рдпрд╛ ред

рдЗрд╕ рд╕рдм рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдзреНрдпрд╛рди рджреЗрдВ: resurtm , DaSourcerer , Cebe рдФрд░ suralc ред

рдкрд░рд┐рд╡рд░реНрддрди рдФрд░ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрдЦреЗрдВред рдпрджрд┐ рдЖрдк рдЙрдиреНрдирдпрди рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рдкрдврд╝реЗрдВред

рд░рд┐рд╣рд╛рдИ рдХреЗ рдмрд╛рдж, рдХреБрдЫ рдЕрдкреНрд░рд┐рдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдЦреЛрдЬ рдХреА рдЧрдИ рдереАред рд╣рдо рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред


рдЦреИрд░, рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХреБрдЫ рдмрджрд▓рд╛рд╡ред



CHtml рдореЗрдВ HTML5 рдХреНрд╖реЗрддреНрд░ рдХрд╛ рд╕рдорд░реНрдерди



CHtml рдореЗрдВ рдирдП рддрд░реАрдХреЗ рдЬреЛрдбрд╝реЗ рдЧрдП рд╣реИрдВ:



рдЗрд╕ рддрд░рд╣ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

 echo CHtml::activeNumberField($model, 'fieldName'); 


CFormatter::formatSize()



рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ рдПрдХ рдЖрдХрд╛рд░ рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдкрдардиреАрдп рдЖрдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдИ рд╡рд┐рдзрд┐:

 echo Yii::app()->format->formatSize(115969); // : 113.25 KB 


рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓реАрдХреЗрд╢рди рд░рд┐рдЯрд░реНрди рдХреЛрдб



рдЕрдм рдЖрдк рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╕реЗ integer рд╡рд╛рдкрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рд░рд┐рдЯрд░реНрди рдХреЛрдб рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдореИрдиреБрдЕрд▓ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реАред

CJavaScript::encode() рдФрд░ js:



рдпрджрд┐ рдЖрдкрдиреЗ рдХрд┐рд╕реА рдлреЙрд░реНрдо рдпрд╛ URL рд╕реЗ рдореВрд▓реНрдп рд▓реЗрддреЗ рд╕рдордп CJavaScript::encode() рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рд┐рдд рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИред рднреЗрджреНрдпрддрд╛ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рджреВрд╕рд░реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ true рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

 CJavaScript::encode($userInput, true); 


рдкреИрд░рд╛рдореАрдЯрд░ js: рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░реЗрдЧрд╛ js: рдЙрдкрд╕рд░реНрдЧред рдпрджрд┐ рдЖрдкрдХреЛ рдЕрднреА рднреА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкрд╛рд╕ рдХрд░рдиреА рд╣реИ, рддреЛ рдЗрд╕реЗ CJavaScriptExpression рд╕рд╛рде рдлреНрд░реЗрдо рдХрд░реЗрдВ:

 CJavaScript::encode(new CJavaScriptExpression('alert("Yii!");'), true); 


рджреВрд╕рд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░ ( safe ) CJavaScriptExpression рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

HTTP рдХреИрд╢рд┐рдВрдЧ



рд╕рд╛рдорд╛рдиреНрдп рдкреГрд╖реНрда рдХреИрд╢рд┐рдВрдЧ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг CHttpCacheFilter рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдлрд╝рд┐рд▓реНрдЯрд░ HTTP рд╣реЗрдбрд░ рднреЗрдЬрддрд╛ рд╣реИ рдЬреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдкреГрд╖реНрда рд╕рд╛рдордЧреНрд░реА рдкрд┐рдЫрд▓реЗ рдЕрдиреБрд░реЛрдз рдХреЗ рдмрд╛рдж рд╕реЗ рдирд╣реАрдВ рдмрджрд▓реА рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╕рд░реНрд╡рд░ рдХреЛ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдлрд┐рд░ рд╕реЗ рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред CHttpCacheFilter рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╕рд╛рде рд╣реА COutputCache:

 public function filters() { return array( array( 'CHttpCacheFilter + index', 'lastModified'=>Yii::app()->db->createCommand("SELECT MAX(`update_time`) FROM {{post}}")->queryScalar(), ), ); } 


рдореИрдиреБрдЕрд▓ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реАред

рдореЙрдбрд▓ рд╕рддреНрдпрд╛рдкрди рдирд┐рдпрдо рдЕрдкрд╡рд╛рдж



рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рдХреНрд░рд┐рдп рд╣реЛрдиреЗ рдкрд░ рд╕рддреНрдпрд╛рдкрди рдХреЗ рдирд┐рдпрдореЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЕрдм except рдкреИрд░рд╛рдореАрдЯрд░ except рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИред рд╕рд┐рдВрдЯреИрдХреНрд╕ on рд╕рдорд╛рди on :

 //     ( ) array('username', 'required', 'except'=>'ignore, this, scenarios, at-all',) 


рдореИрдиреБрдЕрд▓ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реАред

рдЕрдиреБрд╡рд╛рджрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдирдП рдЙрдкрдХрд░рдг рдФрд░ рдкреНрд░рд▓реЗрдЦрди



рдирдпрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ github рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред рдЙрдкрдХрд░рдг рдЖрдкрдХреЛ рдЕрдВрддрд┐рдо рдЕрдиреБрд╡рд╛рдж рдЕрджреНрдпрддрди рдХреЗ рдмрд╛рдж рд╕реЗ рдХрд┐рдП рдЧрдП рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рд╣рдо рдЖрд╢рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рд╕реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реА рдЕрдиреБрд╡рд╛рджреЛрдВ рдХреЛ рдЕрджреНрдпрддрди рд░рдЦрдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреАред

Source: https://habr.com/ru/post/In148761/


All Articles