[TUT] renderPartial()

Bom Pessoal estava estudo o método renderPartial e como não encontrei nada em português então resolvi fazer esse tutorial…

Vamos lá.

Função:


 public string renderPartial(string $view, array $data=NULL, boolean $return=false, boolean $processOutput=false)

Class Reference Yii Framework

[size="5"]$view[/size]

  • Usando // no inicio do diretório ele começará na pasta views como nos exemplos.

  • Observe que o renderPartial não se especifica a extenção .php

Como Devemos fazer:

//corpo/rodape

Como o Yii interpreta:

/seusite/protected/views/corpo/rodape.php

Exemplo:


<?php CController::renderPartial('//site/corpo/rodape');?>

[size="5"]$data[/size]

  • Também é possível enviar dados (strings, integers, arrays e etc…) para o arquivo que será renderizado.

  • No Exemplo envia uma array com o primeiro item de indice copyright a string $cr que e definida na linha anterior.

Exemplo:


 <?php 

 $cr = "Copyright ©2011 Meu Site";

 $this->renderPartial('//site/corpo/rodape', array('copyright'=>$cr));

 ?>

[size="5"]$return[/size]

  • Define se o resultado deve ser devolvido ou se deve ser exibido automaticamente.

  • false: Resultado não será devolvido então será exibido automaticamente.

  • true: Resultado seŕa devolvido então nada seŕa exibido.

  • No exemplo ele armazena tudo que foi devolvido pela função na variável $rodape e em seguida o renderiza.

Exemplo:


 <?php 

 $rodape = CController::renderPartial('//site/corpo/rodape',null,true); 

  echo $rodape;

 ?>

[size="5"]processOutput[/size]

  • Define se o resultado de processamento deve ser pós-processado usando processOutput.

[size="5"]return[/size]


Renderiza o resultado. Isso será nulo se for requerido, como mostrado no ($return).

Valeu Gustavo, tutoriais em Português é de grande valia.

Simples e prático!

Me ajudou bastante este simples post!

Valeu.

Excelente,

Abraço.