หาเวลา timestamp ในการแก้ไขไฟล์ด้วย filemtime()
โจทย์ปัญหาคือเมื่อมีการแก้ไขรูปโปรไฟล์ โดยการ uplaod ขึ้น server แล้ว browser จำ cache รูปเดิม จะทำอย่างไรให้ browser รู้ว่าเป็นรูปภาพใหม่ ดังนั้นเราจะต้องใส่ timestamp เข้าไปตอนแสดงผลรูปภาพด้วย
image.jpg?12345566
ดังนั้น timestamp ของการแก้ไขรูปภาพน่าจะเหมาะสมที่สุด โดย filemtime() มีลักษณะการใช้งานดังนี้
<?php
$filename = 'somefile.jpg';
if (file_exists($filename)) {
echo $filename.'?'.filemtime($filename);
}
//somefile.jpg?15637367483
?>
ตัวอย่างหลังจากมีการ upload รูปโปรไฟล์ใหม่แล้ว เมื่อมีการเรียกการแสดงผลสามารถเรียกดังนี้
<img src="<?=$profile->photo.'?'.filemtime($profile->photo)?>" />
ติดปัญหาตอนทำตาม?
ถามในชุมชน
ความคิดเห็น (0)
ยังไม่มีความคิดเห็น — เริ่มคุยเป็นคนแรก ถามสิ่งที่สงสัย หรือแชร์ประสบการณ์ของคุณ
เข้าสู่ระบบเพื่อร่วมแสดงความคิดเห็น
เข้าสู่ระบบ