【CakePHP】ViewでJavaScriptを直接記述するには(headに出力する)

2019年7月29日

バージョン:CakePHP 2.x

ViewでJavaScriptのファイルを読み込むのではなく、
コードを直接書く場合は「scriptStart」や「scriptBlock」を使用します。

• scriptStart

<?php
	$this->Html->scriptStart(array('inline' => false));
	echo
<<<END
		alert('テスト');
END;
	$this->Html->scriptEnd();
?>

• scriptBlock

<?php
$script = "alert('テスト');";
$this->Html->scriptBlock($script, array('inline' => false));
?>

オプションのinlineをfalseにすることで、
レイアウトファイルの「$this->fetch('script’)」の部分に出力することができます。

echo $this->fetch('script');

また、実際の出力は下記のような形になります。

<script type="text/javascript">
//<![CDATA[
		alert('テスト');
//]]>
</script>

参考:公式サイト(HtmlHelper)

スポンサーリンク