HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux wordpress-ubuntu-s-2vcpu-4gb-fra1-01 5.4.0-169-generic #187-Ubuntu SMP Thu Nov 23 14:52:28 UTC 2023 x86_64
User: root (0)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/shoetique/wp-content/plugins/wp-all-export-pro/src/App/Service/SnippetParser.php
<?php

namespace Wpae\App\Service;

class SnippetParser
{
    const SNIPPET_MATCH_REGEX = '/{([^}^\"^\']*)}/';

    const FUNCTION_MATCH_REGEX = '%(\[[^\]\[]*\])%';

    public function parseSnippets($string)
    {
        $snippets = array();

        preg_match_all(self::SNIPPET_MATCH_REGEX, $string, $snippets);

        if(is_array($snippets)) {
            $snippets = array_filter($snippets[1]);
        }

        foreach ($snippets as &$snippet) {
            $snippet = trim($snippet, "{}");
        }
        return $snippets;
    }

    public function parseFunctions($string)
    {
        $functions = array();
        $functionsResponse = array();

        preg_match_all(self::FUNCTION_MATCH_REGEX, $string, $functions);

        if(is_array($functions) && isset($functions[0]) && !empty($functions[0]) && $functions[0]) {

            $functionsResponse[] = $functions[0];
        }


        $functionsResponse = array_filter($functionsResponse);
        if(isset($functionsResponse[0])) {
            $functionsResponse = $functionsResponse[0];
        }

        foreach($functionsResponse as &$function) {
            $function = trim($function,"[]");

        }

        return $functionsResponse;
    }
}