1

我有一个使用 glob() 函数的 wordpress 主题。问题是我的托管公司禁用了 glob()。如何修改代码以使其使用其他 php 函数(也许是 opendir() ?)

这是代码:

function yiw_get_tabs_path_files() {          
$theme_files_path = YIW_THEME_FUNC_DIR . 'theme-options/';
$core_files_path  = YIW_FRAMEWORK_PATH . 'theme-options/options/';

$tabs = array();

foreach ( glob( $theme_files_path . '*.php' ) as $filename ) {
    preg_match( '/(.*)-options\.(.*)/', basename( $filename ), $filename_parts );
    $tab = $filename_parts[1];

    $tabs[$tab] = $filename;
}

foreach ( glob( $core_files_path . '*.php' ) as $filename ) {
    preg_match( '/(.*)-options\.(.*)/', basename( $filename ), $filename_parts );
    $tab = $filename_parts[1];

    $tabs[$tab] = $filename;
}

return $tabs;

}

4

1 回答 1

1

您可以按照您的建议使用opendirreaddirclosedir的组合。

// open the directory
if ($handle = opendir($file_path)) {

  // iterate over the directory entries
  while (false !== ($entry = readdir($handle))) {

    // match on .php extension
    if (preg_match('/\.php$/', $entry) {
      ...
    }
  }

  // close the directory
  closedir($handle);
}

如果这些也被禁用,您可以尝试面向对象的Directory类。

于 2012-09-26T10:40:58.883 回答