สอบถามเกี่ยวกับการตัดคำที่ได้มีการ explode มาเป็น array หน่อยครับ

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา สอบถามเกี่ยวกับการตัดคำที่ได้มีการ explode มาเป็น array หน่อยครับ

สอบถามเกี่ยวกับการตัดคำที่ได้มีการ explode มาเป็น array หน่อยครับ
คือผมอยากทราบวิธีเกี่ยวกับการตัดคำ ที่ explode เป็น array เรียบร้อยเเล้ว ตามรูปตัวอย่าง ในarray จะมีอยู่ 2 ค่าด้วยกันครับ ซึ่งผมอยากให้มีการตัดคำ ให้เหลือเฉพาะ ตัวที่สีเหลี่ยมไว้ สามารถทำได้อย่างไรบ้างครับ


Antinew007 171.96.174.xxx 24-07-2020 09:41:59

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ


  • ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1

$atags = explode("VS",$atags);


Antinew007 58.11.6.xxx 24-07-2020 09:42
 ความคิดเห็นที่ 2
การตัดคำขึ้นกับรูปแบบ ที่ต้องการตัด เช่น ตัดตามจำนวน สมมติ ตัดตัวที่ 1 -5 ก็ใช้พวกคำสั่ง substr หรือ mb_substr
 
function getvalue($item){
    return mb_substr(trim($item),0,5);
}
 
การตัดโดยใช้ช่องว่าง เช่น ตัดเอาเฉพาะ 2 คำมาจากข้อความทีแบ่งกันโดยมีช่องว่าง ก็ใช้คำสั่ง list กับ explode ร่วมกัน
 
function getvalue($item){
    list($a, $b) = explode(" ",trim($item));
    return implode(" ",[$a, $b]); 
}
 
การตัดโดยใช้การตรวจสอบจากค่าใน ข้อมูลเริ่มต้น เช่น ถ้ามีตรงกับค่าใดๆ ก็เอาค่านั้นมาใช้งาน
 
function getvalue($item){
    $arr_check = ["AAA BB","DDD EE"]; // ค่าจำเพาะที่เราต้องการหา
    $return_val = array_filter($arr_check,function($val) use($item){
        return preg_match("/$val/i",trim($item));
    });
    if(count($return_val)>0){
        return array_values($return_val)[0];
    }else{
        return; 
    }
}
 
ตัวอย่างการใช้งานก็ประมาณนี้
 
$atags = "AAA BBB CCC VS DDD EEE FFF";
$atags_arr = explode(" VS ",$atags);
$atags_items = array_map("getvalue",$atags_arr);
print_r($atags_items);


Ninenik 124.120.201.xxx 24-07-2020






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ