2017-09-11 2 views
0

私はSCANDIR()私はそれがこのSCANDIR()

Array(
    [0]=> 
    string(8) "C:\Users\USERNAME\PocketMine-MP\plugins\DevTools" 
    [1]=> 
    string(17) "C:\Users\USERNAME\PocketMine-MP\plugins\LB-Particles.phar" 
    [2]=> 
    string(11) "C:\Users\USERNAME\PocketMine-MP\plugins\NoGrifersDP" 
    [3]=> 
    string(12) "C:\Users\USERNAME\PocketMine-MP\plugins\PacketLogger" 
    [4]=> 
    string(24) "C:\Users\USERNAME\PocketMine-MP\plugins\PocketMine-DevTools.phar" 
) 

のようにファイルのフルパスを取得したいので、この

Array(
    [0]=> 
    string(8) "DevTools" 
    [1]=> 
    string(17) "LB-Particles.phar" 
    [2]=> 
    string(11) "NoGrifersDP" 
    [3]=> 
    string(12) "PacketLogger" 
    [4]=> 
    string(24) "PocketMine-DevTools.phar" 
) 

ような配列で、それの戻りのフルパスを取得する方法私が使用しようとしたコードが、didntの仕事

$pluginsfolder = $this->getServer()->getDataPath()."plugins/"; 
$plugins = array_slice(scandir($pluginsfolder), 2); 
foreach ($plugins as $plugin); 
$pluginspath = $pluginsfolder . $plugin; 
var_dump($pluginspath); 

答えて

0

あなたが参照&して各要素を変更することができます。

foreach($plugins as &$plugin) { 
    $plugin = $pluginsfolder . $plugin; 
} 

またはキーを持つ:

foreach($plugins as $key => $plugin) { 
    $plugins[$key] = $pluginsfolder . $plugin; 
} 

またはforeachなし:

$plugins = array_map(function($plugin) use($pluginsfolder) { 
         return $pluginsfolder.$plugin 
        }, $plugins); 

しかし、​​3210は完全なパスを返します。

$plugins = glob("$pluginsfolder*")