2018년 5월 15일 화요일

[PHP예제] 088 배열의 일부분을 제거하고 싶을 때


  • 시작 부분 제거 함수
    • array_shift()
  • 끝 부분 제거 함수
    • array_pop()
  • 지정 범위 제거
    • $ret = array_splice(배열, 제거하는 범위의 시작 위치, 요소 수);
  • 지정 범위 대치
    • $ret = array_splice(배열, 대체 범위의 시작 위치, 요소 수, 새로운 값);
  • 배열의 일부분을 분리
    • $ret = array_slice(원래의 배열, 꺼내는 범위의 시작위치[, 추출수]);



 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>배열의 일부분을 제거하고 싶을 때</title>
    <link href="style.css" rel="stylesheet">
</head>
<body>
<div>
<?php
echo "<table><tr><th>시작부분 제거</th><th>끝 부분 제거</th><th>지정 범위 제거</th></tr>";
echo "<tr><td>";
$data = array('a', 'b', 'c', 'd');
echo "<li><p>제거 전의 배열:</p><pre>";
print_r($data);
echo "</pre></li>";
echo "<li><p>제거 후의 배열:</p><pre>";
$val = array_shift($data);
print_r($data);
echo "</pre></li>";
echo "<li><p>제거한 값:" . $val . "</p></li>";

echo "</td><td>";

$data = array('a', 'b', 'c', 'd');
echo "<li><p>제거 전의 배열:</p><pre>";
print_r($data);
echo "</pre></li>";
echo "<li><p>제거 후의 배열:</p><pre>";
$val = array_pop($data);
print_r($data);
echo "</pre></li>";
echo "<li><p>제거한 값:" . $val . "</p></li>";

echo "</td><td>";

$data = array('a', 'b', 'c', 'd');
$pos1 = 1;
$len1 = 2;
echo "<li><p>제거 전의 배열:</p><pre>";
print_r($data);
echo "</pre></li>";
echo "<li><p>시작 위치: " . $pos1 . "</p></li>";
echo "<li><p>제거 수: " . $len1 . "</p></li>";
echo "<li><p>제거 후의 배열:</p><pre>";
$val = array_splice($data, $pos1, $len1);
print_r($data);
echo "</pre></li>";
echo "<li><p>제거한 값:<pre>";
print_r($val);
echo "</pre></p></li>";
echo "</td></tr></table>";
?>
</div>
</body>
</html>


댓글 없음:

댓글 쓰기