Laravel foreach 仅返回第一个值

问题描述 投票:0回答:2

首先请温柔一点,我是初学者,只是在练习,

我有一个问题,我想获取 laravel 的语言文件并编辑其内容。

我的问题是我不太明白以下内容

我有一个返回实际文件的函数,我有一个存储这个的变量

$directory =  File::files(self::$lang_path.$code);

我死了并转储我得到以下内容

array(3) {
  [0]=>
  string(26) "app/lang/en/pagination.php"
  [1]=>
  string(25) "app/lang/en/reminders.php"
  [2]=>
  string(26) "app/lang/en/validation.php"
}

一切都好,但如果

foreach
它死了然后扔掉

$directory =  File::files(self::$lang_path.$code);

    foreach ($directory as $files) 
    {
        dd($files);

    }

我刚回来

string(26) "app/lang/en/pagination.php"

请告诉我我做错了什么?

问题是我需要它,因为我需要嵌套的前部

喜欢

$directory =  File::files(self::$lang_path.$code);

        foreach ($directory as $files) 
        {
            foreach ($files as $file) 
            {
                // preform more stuff
            }

        }

并且不明白我做错了什么,可以请有人给我提示吗?

php foreach laravel laravel-4 iteration
2个回答
2
投票

dd
(转储并死亡)函数会终止脚本执行 - 因此,在调用
die()
之前,它只会显示数组中的第一项。

请使用

var_dump
来代替。

如果你好奇,你可以在这里看到函数定义


0
投票

或者,您可以使用我的辅助功能。

function printPre($array, $string = false, $exit = true){

if(env('APP_ENV')=='local') {

    if($string){
        print_r($array, $string);
    }
    else{
        echo '<pre>';
        print_r($array);
        echo '</pre>';
    }
    if($exit)
        exit;
}

}

© www.soinside.com 2019 - 2024. All rights reserved.