如何在PHP中访问循环外部的for循环变量?

如何在PHP中访问循环外部的for循环变量?,php,for-loop,Php,For Loop,我在PHP中有一个for循环,希望访问循环外的$f变量。有什么方法可以做到这一点吗?我寻找答案,但找不到正确的答案 foreach($dirlist as $f) { } filemtime($f) 更新: 我只是走了一条更简单的路,最终做到了: date('M d, Y', filemtime(getcwd().'/index.php')) 考虑以下伪代码: $yourMatchedFile = null; foreach($dirlist as $f) { if($f is

我在PHP中有一个for循环,希望访问循环外的
$f
变量。有什么方法可以做到这一点吗?我寻找答案,但找不到正确的答案

foreach($dirlist as $f) {

}

filemtime($f)
更新:

我只是走了一条更简单的路,最终做到了:

date('M d, Y', filemtime(getcwd().'/index.php'))

考虑以下伪代码:

$yourMatchedFile = null;
foreach($dirlist as $f) {
    if($f is good enough!!) {
        $yourMatchedFile = $f;
        break;
    }
}

if(isset($yourMatchedFile)) {
     DoWhatever();
}

filemtime
结果添加到新数组中,并按文件名检索上次修改的日期

<?php
// Array of modified dates, file names as keys
$modifiedDates = array();

foreach($dirlist as $f) {
  $modifiedDates[basename($f)] = filemtime($f);
}

// File name to look modified time again (just file name, no path)
// basename function gets file name from path
$filename = basename( $pathToFile );
$lastModified = $modifiedDates[$filename];
?>
<p class="post-info">This article was last reviewed on <?php echo '<time itemprop="dateModified" datetime="'.date('Y-m-d', $lastModified).'">'. date('M d, Y', $lastModified).'</time>'; ?></p>

这篇文章最后一次审查是在


您是否知道
$f
将是数组中的最后一个元素?哪个
$f
?每次迭代都会有不同的
$f
。这是不可能的@Mike您只能从数组中获取最后一个元素…为什么不在循环中使用
filemtime
?你能澄清一下,你想要实现什么吗?我想你正在通过该数组进行循环以满足某些条件,并且你想在循环之外访问匹配的一个,不是吗?我只是简单地使用了这个
date('md,Y',filemtime(getcwd()。/index.php'))
,但你的问题是不要在这个文件上再次使用
filemtime
。虽然你的解决方案不能回答这个问题。我知道这种方法对您有效,但您应该坚持您的问题“如何在PHP中访问循环外的for循环变量?”。我想知道如何访问,但无法解决它。所以我做了更容易的事。我的问题似乎很简单。我只是想知道,在通过数组循环以满足某些条件后,如何能够访问循环外的匹配数组?是的。我完全理解你。你做了更容易的事情,效果很好。虽然我想我回答了你的问题。使用我的解决方案,您可以在循环之外访问此日期。