ทางเลือกการเขียนไวยากรณ์ PHP สำหรับไฟล์ View
ถ้าคุณไม่ได้ใช้ CodeIgniter's template engine คุณก็จะใช้ได้เพียง PHP เพียงอย่างเดียวในไฟล์ View (ส่วนแสดง) ในการลดการใช้โค้ด PHP ในไฟล์เหล่านี้และทำให้ง่ายต่อการค้นหาส่วนของโค้ดเราแนะนำให้คุณใช้ตัวเลือกของ PHP สำหรับไวยากรณ์ควบคุมโครงสร้างและการใช้ echo แบบสั้น ถ้าคุณไม่คุ้นกับไวยการณ์แบบนี้ มันทำให้คุณลบเครื่องหมายปีกกาไปจากโค้ดและรวมถึงลบการเขียนคำสั่ง "echo" ได้
สนับสนุนการใช้ลักษณะแบบสั้นแบบอัตโนมัติ
ข้อสังเกตุ: ถ้าคุณพบว่าไวยากรณ์ในหน้าที่อธิบายอยู่นี้ไม่สามารถใช้กับเซิร์ฟเวอร์ของคุณได้ มันอาจหมายถึงคุณสมบัติ "ลักษณะแบบสั้น (short tags)" ถูกปิดอยู่ในไฟล์ PHP.ini. CodeIgniter จะเขียนใหม่เองอย่างอัตโนมัติ เพื่อให้คุณสามารถใช้ไวยากรณ์นี้โดยแม้แต่เครื่องเซิร์ฟเวอร์ของคุณไม่สนับสนุนเลยก็ตาม โดยคุณสมบัตินี้สามารถถูกเปิดได้ในไฟล์ config/config.php
โดยสังเกตุว่าถ้าคุณใช้คุณสมบัตินี้ แล้วคุณพบข้อผิดพลาดภายในไฟล์ View ข้อความข้อผิดพลาดและบันทัดที่ผิดพลาดจะโชว์ขึ้นมาแทนที่ทุกข้อผิดพลาดที่ปกติถูกโชว์จาก ข้อผิดพลาดของ eval()
ทางเลือก Echos
โดยปกติเวลาใช้ echo หรือ print ค่าของตัวแปรออกมาเราจะทำแบบนี้
<?php echo $variable; ?>
ด้วยทางเลือกไวยากรณ์เราสามารถแบบนี้ได้ (ไม่จำเป็นต้องเป็น CodeIgniter ถึงจะทำได้ด้วย ถ้าเซิร์ฟเวอร์ได้เปิดสนับสนุน short tags)
<?=$variable?>
ทางเลือการควบคุมโครงสร้าง
การควบคุมโครงสร้าง เช่น if, for, foreach, และ while สามารถถูกเขียนได้ด้วยรูปแบบที่เรียบง่ายได้ด้วย นี้คือตัวอย่างการใช้งาน foreach
<ul>
<?php foreach($todo as $item): ?>
<li><?=$item?></li>
<?php endforeach; ?>
</ul>
สังเกตุว่าไม่มีเครื่องหมายปีกกา และแทนที่จะใช้ปีกกาปิดเราใช้แทนด้วยคำว่า endforeach โดยการควบคุมโครงสร้างด้านบนเหมือนการใช้การปิดไวยาการณ์อื่นๆ endif, endfor, endforeach, และ endwhile
ข้อสังเกตุอีกนิดแทนที่เราจะใช้ semicolon(;) หลังจากแต่ละโครงสร้าง (ยกเว้นอันสุดท้าย), เราใช้ colon(:) ซึ่งสิ่งนี้เป็นสิ่งสำคัญ!
นี้คืออีกตัวอย่างหนึ่งของการใช้ if/elseif/else. สังเกตุที่ colon(:)
<?php if ($username == 'sally'): ?>
<h3>Hi Sally</h3>
<?php elseif ($username == 'joe'): ?>
<h3>Hi Joe</h3>
<?php else: ?>
<h3>Hi unknown user</h3>
<?php endif; ?>