curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
    $_REQUEST['string'] = curl_exec($curl);
    curl_close($curl);
}
//end if url
$_REQUEST['pattern'] = urldecode($_REQUEST['pattern']);
$array = array();
$matches = preg_match_all($_REQUEST['pattern'], $_REQUEST['string'], $array);
if ($_REQUEST['capture'] == 'auto') {
    $_REQUEST['capture'] = count($array[1]) ? true : false;
}
$idx = $_REQUEST['capture'] ? 1 : 0;
if ($_REQUEST['nbrmatches']) {
    header('Content-Type: text/plain;charset=utf-8');
    echo $matches;
    exit;
}
//end if nbrmatches
if ($_REQUEST['matchnbr']) {
    header('Content-Type: text/plain;charset=utf-8');
    echo $array[$idx][$_REQUEST['matchnbr'] - 1];
    exit;
}
//end if matchnbr
require 'php2yubnubarray.php';
$_REQUEST['as'] = $_REQUEST['as'] ? $_REQUEST['as'] : 'xml';
$output = php2yubnubarray($array[$idx], $_REQUEST['as'], $_REQUEST['callback']);
if ($error) {
    $output = php2yubnubarray(array($error[0]['number'] . ' : ' . $error[0]['message']), $_REQUEST['as'], $_REQUEST['callback']);
}
echo $output;
<?php

$_REQUEST['as'] = $_REQUEST['as'] ? $_REQUEST['as'] : 'xml';
$_REQUEST['token'] = str_replace('<space>', ' ', $_REQUEST['token']);
$array = explode($_REQUEST['token'], $_REQUEST['data']);
require 'php2yubnubarray.php';
echo php2yubnubarray($array, $_REQUEST['as'], $_REQUEST['callback']);
    $rtrn = curl_exec($curl);
    curl_close($curl);
    return $rtrn;
}
//end function yubnubcmd
require 'yubnub2phparray.php';
require 'php2yubnubarray.php';
$items = yubnub2phparray($_REQUEST['data']);
$_REQUEST['cmd'] = str_replace('%25s', '%s', $_REQUEST['cmd']);
$cmdsep = $_REQUEST['as'] == '<space>' ? ' ' : "\n";
if ($_REQUEST['as'] == 'null') {
    $cmdsep = '';
}
foreach ($items as $item) {
    $cmd = stristr($_REQUEST['cmd'], '%s') ? str_replace('%s', $item, $_REQUEST['cmd']) : $_REQUEST['cmd'] . ' ' . $item;
    $cmd = str_replace('[|', '{', $cmd);
    $cmd = str_replace('|]', '}', $cmd);
    if ($_REQUEST['as'] != 'array') {
        $data .= yubnubcmd($cmd) . $cmdsep;
    } else {
        $data[] = yubnubcmd($cmd);
    }
}
//end foreach items
$_REQUEST['type'] ? $_REQUEST['type'] : ($_REQUEST['type'] = 'xml');
if ($_REQUEST['as'] != 'array') {
    header('Content-Type: text/plain;charset=utf-8');
    echo $data;
} else {
    echo php2yubnubarray($data, $_REQUEST['type'], $_REQUEST['callback']);
}
<?php

function yubnubcmd($cmd)
{
    $curl = curl_init('http://yubnub.org/parser/parse?command=' . urlencode($cmd));
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
    $rtrn = curl_exec($curl);
    curl_close($curl);
    return $rtrn;
}
//end function yubnubcmd
header('Content-Type: text/plain;charset=utf-8');
require 'yubnub2phparray.php';
$items = yubnub2phparray(yubnubcmd('var ' . $_REQUEST['var']));
$items[] = $_REQUEST['append'];
require 'php2yubnubarray.php';
echo yubnubcmd('var ' . $_REQUEST['var'] . ' -set ' . php2yubnubarray($items));