|  | 
	                
  
    | 
	 
        การใช้ if เปลี่ยนเป็นไปใช้ when then ทำยังไงครับรบกวนทีนะคับ     |  
    |  |  
 
	
		|  |  |  |  |  
		|  |  | 
          
            | อันนี้คือโค้ดของผมตอนใช้ ifนะครับ 
 Code (PHP)
 
 $s1 = $row["PREFIX"];
If (strpos($s1, "[DD]", "HD") > 0)
	{
	$s1 =str_replace($s1, "[DD]", date(d));
	}
If (strpos($s1, "[MM]", "HD") > 0)
	{
	$s1 =str_replace($s1, "[MM]", date(m));
	}
If (strpos($s1, "[YY]", "HD") > 0)
	{
	$s1 =str_replace($s1, "[YY]", date(y));
	}
 ที่ผมต้องการคือ ให้มันแปลงทั้งหมดอะคับ ตอนนี้คือมันเข้่า IF อันแรกเสร็จมันไม่ทำ IF อันต่อมา
 มันจะแสดงแค่ วัน
 ที่ผมต้องการคือให้มันแสดงทั้ง วัน เดือน ปี เลยคับ
 
 รบกวนชี้แนะแนวทางทีคับ
 
 
 
 Tag : PHP, MySQL
 
 
 |  
            |  |  
            | 
              
                |  |  |  |  
                |  | 
                    
                      | Date :
                          2015-07-27 15:33:48 | By :
                          storybew | View :
                          950 | Reply :
                          5 |  |  |  
                |  |  |  |  |  
            |  |  
		            |  |  
		|  |  |  |  |  
  
    | 
 
        
          |  |  |  |  |  
          |  |  | 
            
              | ขอดู Output หน่อยครับ ผมว่ามันน่าจะจัดการที่ Query ด้วยการกำหนด Format ได้น่ะครับ => SQL MYSQL DATE_FORMAT 
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2015-07-28 09:40:36 | By :
                            mr.win |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | มันไม่เข้า if ต่อมาอาจจะเพราะคุณได้ทำการแปลงค่าด้วย str_replace ใน if แรกไปแล้วและจับมันใส่ $s1 เหมือนเดิม ซึ่งอาจทำให้ผลลัพธ์ใน if ที่ 2 หาไม่เจออีกแล้ว 
 ค่าที่ได้มาจาก $s1 แรกสุดคืออะไร?
 ต้องการให้มันแปลงแต่ละเงื่อนไขเป็นอะไร?
 
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2015-07-28 09:50:13 | By :
                            mr.v |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | ตาม 1 เลยครับ และอย่าลืม
 strpos ค่าเริ่มต้นคือ 0 ครับ
 ต้องตรวสอบด้วย if( strpos() !==false)
 
 |  
              | 
 ประวัติการแก้ไข
 2015-07-28 10:41:56
 2015-07-28 10:44:25
 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2015-07-28 10:39:03 | By :
                            NewbiePHP |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | เอ่อขอบคุณทุกคนมากเลยครับทำได้แล้วครับ 
 Code (PHP)
 
 If (strpos($s1, "[DD]") > 0 )
	{
		$s1 =str_replace("[MM]", date(d), $s1);
	}
If (strpos($s1, "[MM]") > 0)
	{
		$s1 =str_replace("[MM]", date(m), $s1);
	
	}
If (strpos($s1, "[YY]") > 0)
	{
		$s1 =str_replace("[YY]", date(y), $s1);
	}
	
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2015-07-28 13:58:03 | By :
                            storybew |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              |   หลง element ใน วงเล็ปกันไปหมด 
 เอามาเขียนสั้นๆบันทัดเดียวแบบนี้ก็ได้นะครับไม่ต้อง if
 $s1 =str_replace(array( "[YY]", "[MM]", "[DD]"), explode('-', date('Y-m-d') ), $s1);
 
 ปล. การใช้คำสั่ง date() โดยไม่ได้กำหนดเวลา หรือคำสั่ง time() จะเข้าไปยุ่งกับ system datetime
 ถ้าใช้บ่อยๆ จะทำให้ cpu ของ server ทำงานหนักครับ
 
 ให้กำหนดเป็น ตัวแปร global constant ตั้งแต่เริ่มโปรแกรม แล้วค่อยนำไปใช้ทีหลัง จะใช้กี่ครั้งก็ไม่มีปัญหา
 <?php
 define('curtime', time());
 echo date('Y-m-d', curtime);
 echo date('H:i:s', curtime);
 
 |  
              | 
 ประวัติการแก้ไข
 2015-07-28 16:10:11
 2015-07-28 16:19:04
 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2015-07-28 16:02:46 | By :
                            NewbiePHP |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  |  |