0

偶然发现了一个恼人的问题。

我需要以编程方式从 php 文件中提取特定的文本行。(它是评论中的插件版本号)

看起来很简单,但是我试图读取的文件中包含一个函数,就试图打开它的脚本而言,该函数是未定义的。

无论如何我可以使用 PHP 的内置函数读取文件,到目前为止 file_get_contents()、file() 和 readfile() 都遇到同样的问题。

任何帮助将不胜感激。

- - - - - - - - - - - - - - - - - - - - - - 更新

好吧,看来我之前的错误一定是由于缓存问题,因为它似乎在没有任何未定义函数错误的情况下工作,尽管现在我的返回数组似乎是空的?

阅读器脚本

<?php

//some other code

//lines in question
$lines = file('path/to/file.php');          
$data['Version']=$lines[6];

?>

正在读取的文件

<?php
/*
Plugin Name: Wordfence Security
Plugin URI: http://www.wordfence.com/
Description: Wordfence Security - Anti-virus, Firewal and Site Speedup
Author: Wordfence
Version: 5.0.6
Author URI: http://www.wordfence.com/
*/
if(defined('WP_INSTALLING') && WP_INSTALLING){
    return;
}
define('WORDFENCE_VERSION', '5.0.6');
if(get_option('wordfenceActivated') != 1){
    add_action('activated_plugin','wordfence_save_activation_error'); function wordfence_save_activation_error(){ update_option('wf_plugin_act_error',  ob_get_contents()); }
}
if(! defined('WORDFENCE_VERSIONONLY_MODE')){
    if((int) @ini_get('memory_limit') < 64){
        if(strpos(ini_get('disable_functions'), 'ini_set') === false){
            @ini_set('memory_limit', '64M'); //Some hosts have ini set at as little as 32 megs. 64 is the min sane amount of memory.
        }
    }
    require_once('lib/wordfenceConstants.php');
    require_once('lib/wordfenceClass.php');
    wordfence::install_actions();
}

?>
4

0 回答 0