แก้ไขแล้ว: แปลงสตริงเป็น int ในอาร์เรย์

การปรับปรุงครั้งล่าสุด: 09/19/2023

PHPหรือที่รู้จักกันในชื่อ Hypertext Preprocessor เป็นภาษาสคริปต์ยอดนิยมที่ใช้กันอย่างแพร่หลายในการพัฒนาเว็บ มันมาพร้อมกับฟังก์ชันการทำงานมากมาย เช่น อาร์เรย์ ซึ่งเป็นตัวแปรที่ซับซ้อน ทำให้ผู้พัฒนาสามารถเก็บค่าได้มากกว่าหนึ่งค่าในเวลาเดียวกัน ในบางครั้งในการเขียนโปรแกรม PHP คุณอาจจำเป็นต้องแปลงค่าสตริงในอาร์เรย์ให้เป็นจำนวนเต็มนั่นคือประเด็นหลักที่เรากำลังจะเจาะลึกในบทความนี้

ทำความเข้าใจเกี่ยวกับการแปลงสตริง-จำนวนเต็ม PHP

ใน PHP เราใช้ฟังก์ชันในตัวบางฟังก์ชันเพื่อแปลงสตริงเป็นจำนวนเต็ม ฟังก์ชัน `intval()`เป็นหนึ่งในคำสั่งเหล่านั้นที่สามารถแปลงสตริงหรือทศนิยมให้เป็นจำนวนเต็มได้ โดยรับพารามิเตอร์สองตัว ตัวแรกคือสตริงที่คุณต้องการแปลง ตัวที่สองคือฐานสำหรับการแปลง ซึ่งเป็นตัวเลือกเสริม

สำหรับการแปลงสตริงเป็นจำนวนเต็มภายในอาร์เรย์สามารถใช้ลูปforeach() ของ PHP อย่างง่ายเพื่อวนซ้ำผ่านแต่ละองค์ประกอบและเปลี่ยนรูปแบบได้

วิธีแก้ไข: แปลงสตริงเป็นจำนวนเต็มในอาร์เรย์

รหัส PHP ต่อไปนี้เป็นวิธีการแก้ปัญหาในการแปลงสตริงให้เป็นจำนวนเต็มในอาร์เรย์:

 
$my_array = array("1", "2", "3");
foreach ($my_array as &$value) { 
  $value = intval($value);
} 

ในสคริปต์นี้ เราสร้างอาร์เรย์อย่างง่ายที่มีองค์ประกอบสตริงสามตัว โดยใช้ลูป foreach ของ PHP เราจะวนลูปผ่านแต่ละองค์ประกอบในอาร์เรย์ดั้งเดิม สัญลักษณ์ & ในที่นี้ใช้เพื่ออ้างอิงถึงแต่ละค่าในอาร์เรย์ ทำให้เราสามารถแก้ไของค์ประกอบนั้นได้ จากนั้นฟังก์ชัน intval()จะเปลี่ยนองค์ประกอบสตริงแต่ละตัวให้เป็นจำนวนเต็ม

คำอธิบายทีละขั้นตอนของรหัส

  1. สคริปต์ PHP เริ่มต้นด้วยการประกาศอาร์เรย์ อาร์เรย์ในกรณีนี้มีชื่อว่า $my_array และมีองค์ประกอบสตริงสามองค์ประกอบ
  2. ต่อมาเราจึงมาแนะนำ แต่ละ() วนซ้ำหมายถึงการวนซ้ำแต่ละองค์ประกอบในอาร์เรย์
  3. ในลูป แต่ละองค์ประกอบของอาร์เรย์ซึ่งอ้างอิงเป็น $value จะถูกแปลงจากสตริงเป็นจำนวนเต็มโดยใช้ PHP ช่วงเวลา () ฟังก์ชัน

โดยสรุปแล้ว PHP มีวิธีการที่สะดวกและตรงไปตรงมาในการแปลงค่าสตริงภายในอาร์เรย์ให้เป็นจำนวนเต็ม โดยใช้ ฟังก์ชัน intval() ที่มีอยู่แล้ว ร่วมกับ ลูป foreach()เราสามารถทำการแปลงนี้ได้อย่างราบรื่น การเข้าใจขั้นตอนเหล่านี้ใน PHP จะช่วยให้การเขียนโปรแกรมเว็บมีประสิทธิภาพมากขึ้น

กระทู้ที่เกี่ยวข้อง: