регистрация xml

Когда вы делаете rake assets:precompile, ваши активы попадают в публичный каталог. Посмотрите, можете ли вы найти эти файлы в public/assets/

. Вы должны увидеть что-то вроде этого:

I, [2014-02-23T20:06:21.853314 #26915]  INFO -- : Writing app_root/public/assets/application-ecd8636fc80ea2b712039c4abc365da9.css
1
задан 15 June 2009 в 10:19
поделиться

3 ответа

Взгляните на SimpleXML: http://us2.php.net/simplexml

1
ответ дан 3 September 2019 в 01:25
поделиться

Обработка HTTP-сообщений в PHP довольно проста с использованием классов HTTP PECL .

В вашем случае вы хотите отправить HTTP-запрос ( это сообщение клиент-> сервер). К счастью, HttpRequest :: setPostFiles упрощает процесс включения содержимого файла в HTTP-запрос. Обратитесь к странице руководства PHP (предыдущая ссылка) для уточнения деталей.

К сожалению, страницы руководства для классов HTTP немного скудны по деталям, и не совсем понятно, какие аргументы для HttpRequest :: setPostFiles должны быть, но следующий код должен помочь вам начать:

$request = new HttpRequest(HttpMessage::HTTP_METH_POST);
$request->setPostFiles(array($file));

$response = $request->send();  // $response should be an HttpMessage object

В руководстве для HttpRequest :: setPostFiles указано, что единственный аргумент этого метода - это массив файлов для публикации. Это неясно и может означать массив имен локальных файлов, массив дескрипторов файлов или массив содержимого файла. Не нужно много времени, чтобы выяснить, что правильно!

1
ответ дан 3 September 2019 в 01:25
поделиться

Вот пример, который использует потоки и не полагается на PECL.

// Simulate server side
if (isset($_GET['req'])) {
    echo htmlspecialchars($_POST['data']);
    exit();
}

/**
 * Found at: http://netevil.org/blog/2006/nov/http-post-from-php-without-curl
 */
function do_post_request($url, $data, $optional_headers = null)
{
    $params = array('http' => array('method'  => 'POST',
                                    'content' => $data));

    if ($optional_headers !== null) {
        $params['http']['header'] = $optional_headers;
    }
    $ctx = stream_context_create($params);
    $fp = @fopen($url, 'rb', false, $ctx);
    if (!$fp) {
        throw new Exception("Problem with $url, $php_errormsg");
    }
    $response = @stream_get_contents($fp);
    if ($response === false) {
        throw new Exception("Problem reading data from $url, $php_errormsg");
    }
    return $response;
}

// Example taken from: http://en.wikipedia.org/wiki/XML
// (Of course, this should be filled with content from an external file using
// file_get_contents() or something)
$xml_data = <<<EOF
 <?xml version="1.0" encoding='ISO-8859-1'?>
 <painting>
  <img src="madonna.jpg" alt='Foligno Madonna, by Raphael'/>
  <caption>This is Raphael's "Foligno" Madonna, painted
           in <date>1511</date>-<date>1512</date>.</caption>
 </painting>
EOF;

// Request is sent to self (same file) to keep all data 
// for the example in one file
$ret = do_post_request(
    'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['SCRIPT_NAME'] . '?req',
    'data=' . urlencode($xml_data));

echo $ret;
0
ответ дан 3 September 2019 в 01:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: