I want to show an array in my .blade.php, but it does not work properly so my controller looks like this:
class WatchController extends Controller
{
public function index()
{
$watchFolderPath = 'C:\\xampp\\htdocs\\Pro\\rec\\';
$watchFolder = $this->dirToArray($watchFolderPath);
return view('watch.new')->with('watchFolder', $watchFolder);
}
# Get Directories of Path as Array
function dirToArray($dir) {
$result = array();
$cdir = scandir($dir);
foreach ($cdir as $key => $value)
{
if (!in_array($value,array(".","..")))
{
if (is_dir($dir . DIRECTORY_SEPARATOR . $value))
{
$result[$value] = $this->dirToArray($dir . DIRECTORY_SEPARATOR . $value);
}
else
{
$result[] = $value;
}
}
}
return $result;
}
}
And inside my blade I just tried to call it like this:
{{ $watchFolder }}
but it did not work, I get the following error:
htmlentities() expects parameter 1 to be string, array given
Edit: The array I get shows all Folders/Files with subfolder in a directory. (used dd())
Currently it looks like this:
array:6 [▼
123123 => array:2 [▼
"subfolder1" => array:1 [▼
0 => "video.mpg"
]
"subfolder2" => array:1 [▶]
]
789 => array:2 [▶]
"folder1" => array:2 [▶]
"folder2" => array:2 [▶]
"folder3" => array:2 [▶]
"folder1" => []
]
@foreach
just read the blade manual – Eardrop{{ print_r($array, true) }}
or{!! dd($array) !!}
will help you :) – Selena