- Câu lệnh echo ngắn gọn
- if ... endif
- for ... endfor
- foreach ... endforeach
- while ... endwhile
- switch ... endswitch
Phần nội dung này tìm hiểu một số cách thức viết code ngắn ngọn thay thế trong PHP, những cách thức này áp dụng khi viết code PHP nhúng trong trang HTML, chủ yếu là viết trong các View của các mô hình lập trình MVC, trong các file của php template engine (Plates, Blade, Smarty, Twig, PhpRenderer ...)
Các cấu trúc điều khiển trong PHP gồm có các khối lệnh if
,
white
, for
, foreach
, switch
có thể được viết bằng cấu trúc thay thế, nhằm kết hợp giữa cấu trúc lệnh và việc xuất HTML.
Cú pháp là thay dấu mở khối ở cú pháp gốc bằng dấu hai châm (:
)
và ký hiệu đóng khối bằng các ký hiệu tương tưng là
endif; endwhile;
endfor;
endforeach;
endwitch;
Áp dụng cách viết này chủ yếu trong việc xuất mã HTML nhằm linh hoạt hơn trong viết code.
Rút gọn echo bằng <?=$var>
Khi bạn có một biến $var, nếu cần xuất dữ liệu này trong HTML thì bạn viết theo cách thông thường là:
<?php echo $var; ?>
Thì có thể viết là:
<?=$var?>
Khối lệnh if ... endif trong php
Dạng thay thế của lệnh if php có thể viết là:
if (condition): ... các dòng lệnh ... các dòng lệnh endif;
Viết kết hợp với xuất HTML
<?php if ($condition):?> <p>Các mã HTML xuất ra nếu điều kiện $condition là true</p> <?php endif;?>
Khối if - else - endif
Dạng thay thế của if - else viết dưới dạng
if (condition): ... các dòng lệnh ... các dòng lệnh else: ... các dòng lệnh endif;
Kết hợp với xuất HTML
<?php if ($condition):?> <p>Nội dung HTML xuất ra nếu điều kiện $condition là true</p> <?php else:?> <p>HTML xuất ra nếu điều kiện $condition là false</p> <?php endif;?>
Khối lệnh for ... endfor trong php
Vòng lặp for trong PHP viết dưới dạng thay thế:
for (khởi_tạo; điều_kiện; cập_nhật): ... các dòng lệnh endfor;
Viết dưới dạng kết hợp xuất HTML
<?php for (khởi_tạo; điều_kiện; cập_nhật):?> ... mã HTML ... <?php endfor;?>
Khối vòng lặp for: Ví dụ xuất ra 100 phần tử <li>
<ul> <?php for ($i = 1; $i<=100; $i++):?> <li>Number <?=$i?></li> <?php endfor;?> </ul>
Khối lệnh foreach ... endforeach trong php
Vòng lặp foreach php viết dưới dạng thay thế
foreach ($array as $key => $value): endforeach;
Viết kế hợp xuất HTML
<?php foreach ($items as $item):?> <p>This is : <?=$item?></p> <?php endforeach;?>
Khối lệnh while ... endwhile trong php
Dạng thay thế của vòng lặp while php là:
while ($conditon): ... các lệnh trong khối endwhile;
<?php while ($conditon):?> <h1>Out put</h1> <?php // thiết lập false khi cần thoát lặp $conditon = false; ?> <?php endwhile;?>
Khối lệnh switch .. case ... endswitch trong php
Dạng thay thế của lệnh rẽ nhánh switch case trong PHP
switch ($exp): case value1: ... các lệnh break; case valuen: echo '[Được đọc bài viết thường]'; break; default: ... các lệnh break; endswitch;
Dễ dàng viết kết hợp với xuất HTML
<?php switch ($case):?> <?php case 100:?> <h1>100</h1> <?php break;?> <?php default:?> <h1>Default</h1> <?php break?> <?php endswitch;?>