2017-10-08 54 views
0

我想列出我的上传文件夹中的所有图像。将字符串添加到json数组的项目值

这是我的PHP代码:

public function listfiles() 
{ 
    define('IMAGEPATH', 'uploads/'); 
    foreach(glob(IMAGEPATH.'*') as $filename){ 
     $imag[] = basename($filename); 
    } 
    echo json_encode($imag); 

} 

我执行AJAX GET请求,我的服务器,这是我的回应:

$.get("http://test.dev/templates/listfiles", function(data) { 
 
\t \t 
 
\t \t var host = 'http://test.dev/uploads/'; 
 
     \t \t \t $.each(JSON.parse(data), function(key, value) { 
 
    \t \t \t \t var images =[host + value]; 
 
    \t \t \t \t console.log(data); 
 
      });

我的回应:

["kkkk.jpg","test.jpg","test1.jpg"] 

我试图将字符串添加到我的JSON数组项值

所要的输出是这样的:

 var host 'www.test.com/'; 
 
     
 
     var images = 
 
     [ 
 
     
 
     host + 'img/logo.png', 
 
     host + 'img/tmp-blocks.jpg', 
 
     host + 'img/tmp-tgl-images.jpg', 
 
     host + 'img/tmp-send-test.jpg', 
 
     host + 'img/tmp-devices.jpg', 
 
     
 
     ];

回答

0

首先定义image为数组进出循环,然后将连接的字符串推入image数组。

$.get("http://test.dev/templates/listfiles", function(data) {  
    var host = 'http://test.dev/uploads/'; 
    var images =[]; 

    $.each(JSON.parse(data), function(key, value) { 
     images.push(host + value); 
    }); 
    console.log(images); 

}) 
0

我试图改变这样我的代码和它的工作:

 define('IMAGEPATH', 'uploads/'); 
    foreach(glob(IMAGEPATH.'*') as $filename){ 
     $imag[] = 'http://cimailer.dev/uploads/'.basename($filename); 
    } 

    echo json_encode($imag,JSON_UNESCAPED_SLASHES); 

\t $.get("http://cimailer.dev/templates/listfiles", function(data) { 
 
\t \t 
 
    \t \t \t var images =JSON.parse(data); 
 
      
 
     });

感谢您的答案