메뉴 건너뛰기

프로그램언어

조회 수 1624 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

배열을 테이블로 만들 필요가 생겨 작성했습니다.
rowspan을 적용한 테이블로 만드는 소스 입니다.

만약 아래와 같은 배열이 있다면

$arr = [
 'a' => [
  'b' => 1,
  'c' => 1
 ],
];

아래와 같은 테이블로 만듭니다.

<table>
<tr>
<td rowspan="2">a</td><td>b</td><td>1</td>
</tr>
<tr>
<td>c</td><td>1</td>
</tr>
</table>


class Maketable
{
 
    protected $CI;
 
    public function __construct()
    {
        $this->CI =& get_instance();
    }
 
    public function make_table($data, $convert_fg = true)
    {
        $str = '';
        foreach ($data as $key => $value) {
            $this->make_tr($key, $value, $convert_fg, $str);
        }
        return $str;
    }
 
    public function cnt_depth($data, &$cnt = 0)
    {
        if (is_array($data)) {
            foreach ($data as $value) {
                $this->cnt_depth($value, $cnt);
            }
        } else {
            $cnt++;
        }
        return $cnt;
    }
 
    public function make_tr($key, $data, $convert_fg, &$str = '', &$first = false)
    {
        if (is_array($data)) {
            $head_tr = ($first === true) ? '' : '<TR>';
            $rowspan = $this->cnt_depth($data);
            $key_str = ($convert_fg === true) ? $this->CI->lang->line($key) : $key;
            $str .= $head_tr . "<TD rowspan=\"{$rowspan}\">{$key_str}</TD>";
            $first = true;
            foreach ($data as $key => $value) {
                $this->make_tr($key, $value, $convert_fg, $str, $first);
            }
            $str .= "</TR>";
        } else {
            $head_tr = ($first === true) ? '' : '<TR>';
            $first = false;
            $key_str = ($convert_fg === true) ? $this->CI->lang->line($key) : $key;
            $str .= $head_tr . "<TD>{$key_str}</TD><TD>{$data}</TD></TR>";
        }
        return $str;
    }
}


  1. No Image 08Jan
    by
    2019/01/08 Views 1595 

    내 계정 용량 체크

  2. No Image 08Jan
    by
    2019/01/08 Views 1222 

    사업자번호로 사업자 종류알기

  3. No Image 08Jan
    by
    2019/01/08 Views 1391 

    디비내용을 엑셀 파일로 다운로드 시키는 방법

  4. No Image 08Jan
    by
    2019/01/08 Views 1429 

    php/asp에서 가상번호 부여와 가상번호를 거꾸로 적용

  5. No Image 08Jan
    by
    2019/01/08 Views 1805 

    php에서 체크박스 선택한 것 보여주기

  6. No Image 08Jan
    by 조쉬
    2019/01/08 Views 1624 

    배열을 테이블로 만들기

  7. No Image 08Jan
    by
    2019/01/08 Views 1087 

    include 와 namespace

  8. No Image 08Jan
    by
    2019/01/08 Views 1226 

    파일

  9. No Image 08Jan
    by
    2019/01/08 Views 1222 

    디렉토리의 제어

  10. No Image 27Oct
    by
    2018/10/27 Views 3539 

    PHP 문자열에서 검색어를 기준으로 앞뒤로 일정 길이만큼 자르기

  11. No Image 27Oct
    by
    2018/10/27 Views 4761 

    PHP 랜덤확률 구하기

  12. No Image 27Oct
    by
    2018/10/27 Views 3502 

    PHP 소켓을 이용하여 URL의 응답결과를 문자열로 받기

  13. No Image 27Oct
    by
    2018/10/27 Views 4121 

    PHP 랜덤 문자열 생성

  14. PHP XML 문서파싱 (SAX 방식 , DOM 방식)

  15. No Image 27Oct
    by
    2018/10/27 Views 3536 

    PHP split()와 explode()의 차이점

  16. No Image 27Oct
    by
    2018/10/27 Views 4091 

    PHP eregi가 빠를까, strpos가 빠를까?

  17. No Image 27Oct
    by
    2018/10/27 Views 3785 

    PHP 확장 모듈을 이용한 C 라이브러리 사용

  18. No Image 27Oct
    by
    2018/10/27 Views 3259 

    자바스크립트 이스케이프 문자열을 PHP로 디코딩 하기

  19. No Image 28Sep
    by
    2018/09/28 Views 5286 

    이미지 땡겨와서 출력하기

  20. No Image 28Sep
    by
    2018/09/28 Views 6070 

    DB 연동 4단 셀렉트 박스

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved