多次元配列をフィルタリングする方法に関する優れたチュートリアルをここで見つけました: PHPは特定のキーで2次元配列をフィルタリングします
その間
$filtered = array_filter(
$array,
function($v) {
return $v['type'] == 'folder';
}
);
フォルダエントリのみを表示するという点で必要なことを正確に実行します。ユーザー入力に基づいて配列をフィルタリングできる必要があります。
したがって、上記のページで使用した例から、フォルダーのチェックボックスがあり、ページの場合、ユーザーが選択したもの(ページ、フォルダー、またはその両方)に応じて、選択内容が表示されます。
私が遭遇している問題は、$ v ['type']=='folder'を格納するために変数を使用できないように見えることです。
私は次のようなことをしたいと思っています:
$filtered = array_filter($array, function($v) { return $userSelections; });
また、eval()を使用して変数の内容を提供する可能性についても検討しました(これは最善のアイデアではないかもしれませんが、考えられる他のすべてを試しました)が、それも機能しないようです。 。
ここでのアドバイスは素晴らしいでしょう。
ありがとう。