การแยกและต่อสตริง
แปลงระหว่างสตริงกับอาร์เรย์ด้วย explode, implode และ chunk_split
การแยกและต่อสตริง เป็นบทเรียน PHP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน PHP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส PHP Academy มีบทเรียนทั้งหมด 4 บทเรียน
explode() และ implode()
ฟังก์ชันที่สำคัญที่สุดสองฟังก์ชันสำหรับแปลงระหว่างสตริงกับอาร์เรย์:
explode($delimiter, $string)— แบ่งสตริงเป็นอาร์เรย์implode($glue, $array)— รวมอาร์เรย์เป็นสตริง
พื้นฐานของ explode()
แบ่งสตริงตามตัวคั่น:
<?php
$csv = 'Alice,Bob,Carol,Dave';
$names = explode(',', $csv);
print_r($names);
// ['Alice', 'Bob', 'Carol', 'Dave']
// Limit the number of parts
$parts = explode(',', $csv, 2);
print_r($parts);
// ['Alice', 'Bob,Carol,Dave']implode() และ join()
รวมอาร์เรย์ของสตริงให้เป็นสตริงเดียว:
<?php
$tags = ['php', 'mysql', 'linux'];
echo implode(', ', $tags); // php, mysql, linux
echo implode(' | ', $tags); // php | mysql | linux
echo implode('', $tags); // phpmysqllinux
// join() is an alias for implode()
echo join('-', $tags); // php-mysql-linuxการแยกวิเคราะห์บรรทัด CSV
ใช้ str_getcsv() เพื่อแยกวิเคราะห์บรรทัด CSV รวมถึงฟิลด์ที่อยู่ในอัญประกาศ:
<?php
$line = 'Alice,"New York, NY",30';
$fields = str_getcsv($line);
print_r($fields);
// ['Alice', 'New York, NY', '30']preg_split() — แบ่งตามรูปแบบ
แบ่งตามรูปแบบนิพจน์ทั่วไปสำหรับตัวคั่นที่ซับซ้อน:
<?php
$text = 'one1two2three3four';
// Split on any digit
$parts = preg_split('/[0-9]/', $text);
print_r($parts);
// ['one', 'two', 'three', 'four']
// Split on whitespace (one or more)
$words = preg_split('/\s+/', ' hello world ');
print_r(array_filter($words)); // ['hello', 'world']str_split()
str_split() แบ่งสตริงเป็นอาร์เรย์ของส่วนย่อยตามขนาดที่กำหนด:
<?php
$str = 'Hello';
// Split into individual characters
$chars = str_split($str);
print_r($chars); // ['H','e','l','l','o']
// Split into chunks of 2
$chunks = str_split('ABCDEF', 2);
print_r($chunks); // ['AB','CD','EF']การสร้างสตริงคำค้นหา
ใช้ http_build_query() เพื่อประกอบสตริงคำค้นหาใน URL จากอาร์เรย์:
<?php
$params = [
'search' => 'php tutorial',
'page' => 2,
'sort' => 'date',
];
$query = http_build_query($params);
echo $query;
// search=php+tutorial&page=2&sort=date
echo '/posts?' . $query;การแยกวิเคราะห์สตริงคำค้นหา
แยกวิเคราะห์สตริงคำค้นหาของ URL เป็นอาร์เรย์ด้วย parse_str():
<?php
$qs = 'name=Alice&age=30&city=London';
parse_str($qs, $params);
print_r($params);
// ['name'=>'Alice', 'age'=>'30', 'city'=>'London']
// Or use parse_url + parse_str for full URLs
$url = 'https://example.com/search?q=php&page=1';
$query = parse_url($url, PHP_URL_QUERY);
parse_str($query, $params);
echo $params['q']; // phpการใช้ implode สำหรับอนุประโยค SQL IN
การใช้งาน implode แบบคลาสสิก — สร้างอนุประโยค SQL IN จากอาร์เรย์:
<?php
$ids = [1, 2, 3, 4, 5];
$placeholders = implode(',', array_fill(0, count($ids), '?'));
$sql = "SELECT * FROM users WHERE id IN ($placeholders)";
echo $sql;
// SELECT * FROM users WHERE id IN (?,?,?,?,?)
// Use prepared statements with these placeholders!สตริงเป็นอาร์เรย์คำ
แบ่งประโยคเป็นคำและประมวลผลแต่ละคำ:
<?php
$sentence = 'The quick brown fox';
$words = explode(' ', $sentence);
$reversed = array_reverse($words);
echo implode(' ', $reversed);
// fox brown quick The
$wordCount = count($words);
echo "Word count: $wordCount"; // 4sprintf กับการกระจายอาร์เรย์
รวม implode เข้ากับ sprintf เพื่อการจัดรูปแบบที่ยืดหยุ่น:
<?php
$cols = ['name', 'email', 'age'];
$values = ['Alice', 'alice@test.com', 30];
$colList = implode(', ', $cols);
$valPlaceholders = implode(', ', array_fill(0, count($values), '?'));
$sql = "INSERT INTO users ($colList) VALUES ($valPlaceholders)";
echo $sql;
// INSERT INTO users (name, email, age) VALUES (?, ?, ?)ตรวจสอบอย่างรวดเร็ว
explode(',', 'a,b,c', 2) ส่งคืนอะไร
สรุปทบทวน: การแบ่งและการรวม
ฟังก์ชันสำคัญ:
explode($delim, $str)— แปลงสตริงเป็นอาร์เรย์implode($glue, $arr)— แปลงอาร์เรย์เป็นสตริงstr_split($str, $len)— แบ่งเป็นส่วนย่อยขนาดคงที่preg_split($pattern, $str)— แบ่งตามนิพจน์ทั่วไปstr_getcsv()— แยกวิเคราะห์ CSV ที่มีฟิลด์ในอัญประกาศhttp_build_query()— แปลงอาร์เรย์เป็นสตริงคำค้นหาใน URL
คำถามที่พบบ่อย
บทเรียน “การแยกและต่อสตริง” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การแยกและต่อสตริง” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส PHP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส PHP Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การแยกและต่อสตริง”
แปลงระหว่างสตริงกับอาร์เรย์ด้วย explode, implode และ chunk_split คุณปฏิบัติ PHP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน PHP Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน PHP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “การแยกและต่อสตริง” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน PHP Academy นี้ได้ไหม
ได้ บทเรียน PHP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- พื้นฐานสตริงและการต่อสตริง
- การค้นหาและแทนที่ในสตริง
- ฟังก์ชันการตัดบางส่วนและเติมความยาว
- การแยกและต่อสตริง