Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

php顺丰接口实例

作者:浪推晚风   发布日期:2026-02-28   浏览:623

以下是一个使用PHP调用顺丰接口的示例:

<?php
// 请求接口的URL
$url = 'http://sfapi.sf-express.com/std/service';

// 接口参数
$params = array(
    'head' => array(
        'transType' => '301',
        'transMessageId' => '20190429123456',
        'transMessageTimestamp' => date('Y-m-d H:i:s'),
    ),
    'body' => array(
        'orderId' => '1234567890',
        'expressType' => '1',
        'payMethod' => '1',
        'j_company' => '发件人公司',
        'j_contact' => '发件人姓名',
        'j_tel' => '发件人电话',
        'j_province' => '发件人省份',
        'j_city' => '发件人城市',
        'j_county' => '发件人县/区',
        'j_address' => '发件人详细地址',
        'd_company' => '收件人公司',
        'd_contact' => '收件人姓名',
        'd_tel' => '收件人电话',
        'd_province' => '收件人省份',
        'd_city' => '收件人城市',
        'd_county' => '收件人县/区',
        'd_address' => '收件人详细地址',
        'cargoCount' => '1',
        'cargoWeight' => '1',
        'payArea' => '1',
        'remark' => '备注',
    ),
);

// 转换参数为XML格式
$xml = arrayToXml($params);

// 发送请求
$response = sendRequest($url, $xml);

// 解析响应结果
$result = parseResponse($response);

// 输出结果
print_r($result);

/**
 * 将数组转换为XML格式
 *
 * @param array $array
 * @param SimpleXMLElement $xml
 * @return string
 */
function arrayToXml($array, $xml = null)
{
    if (!$xml) {
        $xml = new SimpleXMLElement('<xml></xml>');
    }

    foreach ($array as $key => $value) {
        if (is_array($value)) {
            arrayToXml($value, $xml->addChild($key));
        } else {
            $xml->addChild($key, $value);
        }
    }

    return $xml->asXML();
}

/**
 * 发送HTTP请求
 *
 * @param string $url
 * @param string $data
 * @return string
 */
function sendRequest($url, $data)
{
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $response = curl_exec($ch);

    curl_close($ch);

    return $response;
}

/**
 * 解析XML响应结果
 *
 * @param string $response
 * @return array
 */
function parseResponse($response)
{
    $xml = simplexml_load_string($response);
    $json = json_encode($xml);
    $array = json_decode($json, true);

    return $array;
}

请注意,这只是一个简单的示例,实际使用时需要根据顺丰接口文档提供的参数和要求进行相应的调整。此示例中使用了curl库发送HTTP请求,并使用SimpleXMLElement类处理XML数据。

上一篇:php版本切换linux

下一篇:数据库php怎么打开

大家都在看

php session用法

php 定义常量

php soapclient

phpisset函数

php html转图片

php后端

php爬虫框架

php多线程与并发

php读取csv文件

php+mysql动态网站开发

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站