이 기사의 예에서는 단일 사용자 블로그 시스템의 기사 세부 정보 페이지에 댓글 양식을 삽입하는 Yii의 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다:
작업 부분:
<?php function test($objs) { $objs->var=10; } class one { public $var=1; } $obj=new one(); echo $obj->var.'<p>'; test($obj); echo $obj->var; exit;
PostController.php 페이지:
... /** * Displays a particular model. * @param integer $id the ID of the model to be displayed */ public function actionView($id) { $post=$this->loadModel($id); $comment=$this->newComment($post); $this->render('view',array( 'model'=>$post, 'comment'=>$comment, )); } protected function newComment($post) { $comment=new Comment(); if(isset($_POST['Comment'])) { $comment->attributes=$_POST['Comment']; if($post->addComment($comment))//============================== { if($comment->status==Comment::STATUS_PENDING) Yii::app()->user->setFlash('commentSubmitted','Thank you...'); $this->refresh(); } } return $comment; } ...
models/Post.php 페이지:
... public function addComment($comment) { if(Yii::app()->params['commentNeedApproval']) $comment->status=Comment::STATUS_PENDING; else $comment->status=Comment::STATUS_APPROVED; $comment->post_id=$this->id; return $comment->save(); } ...
post/view.php 페이지:
... <div> <h3>Leave a Comment</h3> <?php if(Yii::app()->user->hasFlash('commentSubmitted')): ?> <div> <?php echo Yii::app()->user->getFlash('commentSubmitted'); ?> </div> <?php else: ?> <?php $this->renderPartial('/comment/_form',array( 'model'=>$comment, )); ?> <?php endif; ?> </div><!-- comments --> ...
이 글이 Yii 프레임워크를 기반으로 하는 모든 사람의 PHP 프로그램 설계에 도움이 되기를 바랍니다.
위 내용은 관련 내용을 포함하여 단일 사용자 블로그 시스템의 기사 세부정보 페이지에 댓글 양식을 삽입하는 Yii 방법을 소개한 내용입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.