functions.php上的wordpress内存大小错误

functions.php上的wordpress内存大小错误,php,string,wordpress,serialization,Php,String,Wordpress,Serialization,我正在为wordpress制作一个插件,但是我的服务器上允许的内存大小有问题,它是128,他们不允许我在运行时增加内存 我的插件具有将用户数据导出到csv和向用户发送电子邮件的功能。我发现wordpress,functions.php第252行出现错误 有没有有效的方法来优化下面的函数以防止出错 多谢各位 function is_serialized( $data ) { // if it isn't a string, it isn't serialized i

我正在为wordpress制作一个插件,但是我的服务器上允许的内存大小有问题,它是128,他们不允许我在运行时增加内存

我的插件具有将用户数据导出到csv和向用户发送电子邮件的功能。我发现wordpress,functions.php第252行出现错误

有没有有效的方法来优化下面的函数以防止出错

多谢各位

function is_serialized( $data ) {
        // if it isn't a string, it isn't serialized
        if ( ! is_string( $data ) )
            return false;
        $data = trim( $data );
        if ( 'N;' == $data )
            return true;
        $length = strlen( $data );
        if ( $length < 4 )
            return false;
        if ( ':' !== $data[1] )
            return false;
        $lastc = $data[$length-1];
        if ( ';' !== $lastc && '}' !== $lastc )
            return false;
        $token = $data[0];
        switch ( $token ) {
            case 's' :
                if ( '"' !== $data[$length-2] )
                    return false;
            case 'a' :
            case 'O' :
                return (bool) preg_match( "/^{$token}:[0-9]+:/s", $data );
            case 'b' :
            case 'i' :
            case 'd' :
                return (bool) preg_match( "/^{$token}:[0-9.E-]+;\$/", $data );
        }
        return false;
    }
明白了


请将csv结构放入我添加的位置(字段是动态的)有一种有效的方法来完成此操作:)
$outFile = '';
                $blogusers = get_users();

                // retrieve the current options
                $spueIntervall = get_option('spue_intervall');
                //fileds are dynamic
                $spueSeperator = get_option('spue_seperator');
                $spueFields = get_option('spue_fields');

                // Check if the functions is already loaded
                if (!function_exists('get_userdata'))
                    require_once (ABSPATH . 'wp-includes/pluggable.php');

                // Setup the top-line of the file
                foreach ($spueFields AS $fieldKey => $fieldValue)
                {

                    if ($fieldValue == 1)
                    {

                        $outFile .= $fieldKey . $spueSeperator;

                    }

                }

                $outFile .= "\n";


                // Loop to all users
                foreach ($blogusers as $user) 
                {

                    // Get the userdate
                    $user_info = get_userdata($user->ID);

                    // Only output the needed data
                    foreach ($spueFields AS $fieldKey => $fieldValue)
                    {

                        if ($fieldValue == 1)
                        {

                            $outFile .= '"' . $user_info->{$fieldKey} . '"' . $spueSeperator;

                        }

                    }

                    $outFile .= "\n";

                }           


                // Save 
                file_put_contents( dirname(__FILE__) . '\spue-export.csv', utf8_encode($outFile));
foreach ( $blogusers as $user ) {
                $data = array();
                foreach ($spueFields AS $fieldKey => $fieldValue) {
                if ($fieldValue == 1)
                        {
                    $value = isset( $user->{$fieldKey} ) ? $user->{$fieldKey} : '';
                    $value = is_array( $value ) ? serialize( $value ) : $value;
                    $data[] = '"' . str_replace( '"', '""', $value ) . '"';
$outFile.=implode( ',', $data ) . "\n";                 
                }