v2.1.1
Giriş yap

verot net ile multiple upload sonrası dosya adlarını tek bir array içinde alma

Verot.net ile multiple upload yapıyorum ancak dosya adlarını tek bir array içinde alamıyorum!

kodlarım şu şekilde;

<?php
require_once 'upload.php';
# Çoklu resim yükleme işlemi ##
$images = array();
foreach (@$_FILES['resim'] as $k => $l) {

  foreach ($l as $i => $v) {
	if (!array_key_exists($i, $images))
	  $images[$i] = array();
	$images[$i][$k] = $v;
  }
}

foreach ($images as $image){

	$handle = new Upload($image);
	if ($handle->uploaded) {

		/* Resmi Yeniden Adlandır */
	$dosya_adi =	$handle->file_new_name_body = date('h:i:s').'-'.$_FILES["resim"]["name"][$i];

		/* Resmi Yeniden Boyutlandır */
		$handle->image_resize = true;
		$handle->image_x = 400;
		$handle->image_ratio_y = true;

		/* Resim Yükleme İzni */
		$handle->allowed = array('image/*');

		/* Resmin yükleneceği adres */
		$handle->Process(realpath("./resimler/"));
		$handle-> Clean();

	} else {
		echo $handle->error;
	}
}


?>

Ve sonrasında resimlerin isimlerini almak istiyorum ancak;

<?php if ($handle->processed) {

      echo 'resimler başarıyla yüklendi. <br><pre>';
      for($a=0; $a<count($images); $a++){


        $array = array(($images[$a]['name']));
        echo "<pre>";
        print_r ($array);
        echo "</pre>";
      }
        echo '<br> =============================<br>';
}

        else{
////
} ?>

Çıktı Şu şekilde geliyor;

Array
(

[0] => 1950-pontiac.jpg

)
Array
(

[0] => guzel-araba.jpg

)
Array
(

[0] => lada-vaz-2107.png

)
Array
(

[0] => model-car.jpg

)

Yapmak istediğim şey bu dosya adlarını ya tek bir array içine almak(Çünkü her biri farklı olan ama indis değerleri aynı olan arraylar olarak geliyor.)
Yada bu dosya adlarını bir şekilde implode etmek. Yardımcı olabilirseniz memnun olurum teşekkürler.

Daha fazla markdown örneğine buraya tıklayarak ulaşabilirsin!

Cevaplar
myazar
6 gün önce

anahtar kelimen array_map olmalıdır.
Aşağıdaki kod bloğu işini görecektir.

<?php 
if ($handle->processed) {
    $resimAdlariDizisi=array_map(fn($value)=>$value['name'],$images);
    print_r($resimAdlariDizisi);
}else {
    
    //hatavs
}
mtvartemis
6 gün önce

oocam hatan galiba en sonki attığın kodda sen her for döngüsünde yeni bir array oluşturyorsun onun yerine foru array iöerisinde kullan yani şöykle

mtvartemis
6 gün önce

sen sabit bir array oluştur her for döndüğünde o arraye ekle veriyi

mtvartemis
6 gün önce

for(){
$ekle = $array["isimler"]=$images[$a]['name'];
}

hocam bu şekilde dene bide

igoodubad2
6 gün önce

Yok Senin söylediğin şekilde aldığım zaman dosya adları birleşik olarak geliyor. bu alde iken de dosya adları farklı uzunlukta yada uzantılarda olduğundan explode edemiyorum yani ayrlmıyor.
çıktı şu şekilde;
[1950-pontiac.jpgguzel-araba.jpglada-vaz-2107.pngmodel-car.jpg]

bunu nasıl ayırabilirim ki?
verdiğin örnek ilk denemelerimden biriydi.

igoodubad2
6 gün önce

mtvartemis ocam dediğini yanlış anlamış olduğumu düşündüm ki yanlış anlamışım şimdi dediğiniz şekilde çıktı şu şekilde sonda istediğim gibi ancak bunu nasıl alabilirim?
Array
(

[isimler] => Array
    (
        [0] => Array
            (
                [0] => 1950-pontiac.jpg
            )

    )

)
Array
(

[isimler] => Array
    (
        [0] => Array
            (
                [0] => 1950-pontiac.jpg
            )

        [1] => Array
            (
                [0] => guzel-araba.jpg
            )

    )

)
Array
(

[isimler] => Array
    (
        [0] => Array
            (
                [0] => 1950-pontiac.jpg
            )

        [1] => Array
            (
                [0] => guzel-araba.jpg
            )

        [2] => Array
            (
                [0] => lada-vaz-2107.png
            )

    )

)
Array
(

[isimler] => Array
    (
        [0] => Array
            (
                [0] => 1950-pontiac.jpg
            )

        [1] => Array
            (
                [0] => guzel-araba.jpg
            )

        [2] => Array
            (
                [0] => lada-vaz-2107.png
            )

        [3] => Array
            (
                [0] => model-car.jpg
            )

    )

)

igoodubad2
6 gün önce

myazar ocam çok teşekkür ederim. tam istediğim buydu varolun.

Önce Burayı Okuyun!
Cevap yazarken markdown kod yazımını kullanmanız gerekiyor. Nasıl kullanacağınızı bilmiyorsanız buradaki makaleye gözatın!
Cevap yaz