2013-10-14 5 views
1

데이터베이스에서 파일 이름의 문자열을 분할 (images)내가 열이있는 제품이라는 MySQL의 테이블이

[]과 같은 ,

로 구분이 칼럼에서 여러 파일 이름이 있습니다 :

[image-1.jpg],[image-2.jpg],[image-4.jpg],[image-5.jpg] 

등등 ...

이미지 파일 이름을 추출하여 원하는 것처럼 보이게하고 싶습니다. E :

image-1.jpg 
image-2.jpg 
image-3.jpg 
image-4.jpg 
image-5.jpg 

여기에 내 현재 PHP입니다 :

<?php 
$images = explode(',',$project['images']); 

     foreach($images as $image) 
     { 
      $display_image = substr($image, 1, -1); 
      ?> 
      <tr> 
       <td><img src="/img/project-gallery/<?php echo $display_image; ?>" width="160px" /><br /> 
       <input type="checkbox" name="current_images<?php echo $project["sequence"]; ?>" id="current_images<?php echo $project["sequence"]; ?>" value="image_id_checkbox_<?php echo $project["sequence"]; ?>" /></td> 
      </tr> 
      <?php 
     } 
     ?> 

그래서 나는 데이터베이스의 이미지 열에서 선택한 [filename.extn],을 삭제 할 수 있도록하려면 각 이미지, 아래 체크 박스가 있습니다.

예를 들어, 내가 이미지 1.JPG 확인란을 선택하면 내가 이미지 열이처럼 살고 싶지 것 :

image-2.jpg 
image-3.jpg 
image-4.jpg 
image-5.jpg 
+0

44 질문이 있습니다. 흠, 다음 내용을 읽으십시오. http://meta.stackexchange.com/a/5235/220538 –

답변

0

preg_split -이 그것을 할 것입니다 정규 표현식 문자열을 나눕니다 ...

$images = preg_split("/[\[\],]+/", $project['images']); 
0

이 시도 :

<?php 
     $string = '[image-1.jpg],[image-2.jpg],[image-3.jpg],[image-4.jpg],[image-5.jpg]'; 
     $str_arr = explode(',', $string); 

     foreach($str_arr as $key => $value) 
     { 
      $value = trim($value, '[]'); 
      echo $value."<br />"; 
     } 
     ?> 

-

감사합니다 ....

+0

cool - 이미지 열에서 하나의 파일 이름을 제거하는 가장 좋은 방법을 알고 있습니까? 예 : 확인란이있는 경우 각 $ 값 옆에있는 체크 박스가 데이터베이스 셀에서 제거됩니까? – user2710234

+0

예, 할 수 있습니다. 우리가해야 할 일은 체크 박스로 체크 된 모든 이미지를 가져온 다음 이미지 열 셀에서 이미지를 제거하는 것입니다. 코드 작성에 도움이 필요하면 알려주십시오. –

관련 문제