php传输xml数据,php xml文件

php怎么发送xml报文到WSRecvService

$client = new SoapClient('这里填wsdl文件地址');

山南网站建设公司创新互联,山南网站设计制作,有大型网站制作公司丰富经验。已为山南1000多家提供企业网站建设服务。企业网站搭建\外贸网站制作要多少钱,请找那个售后服务好的山南做网站的公司定做!

$xml = '这里填要发送的xml';

$client-要调用的方法名(array('参数名' = $xml));

//参数一般为数组,下标即接收的参数名,如,对方接收的参数名为sfToXMLStr,则是array('sfToXMLStr' = $xml)

php 如何发送xml报文

?php

if( $_SERVER['REQUEST_METHOD'] === 'POST' ){

// 接收

$content = file_get_contents('php://input');

$xml = simplexml_load_string($content);

echo "来自XML接收方的响应\n";

print_r( get_object_vars($xml) );

exit;

}

// 发送行为

$xml = xml

?xml version="1.0"?

FOX

helloworld/hello

/FOX

xml;

$setting = array(

'http' = array(

'method' = 'POST',

'user_agent' = 'Client Application Name',

'header' = "Content-type: application/x-www-form-urlencoded",

'content' = $xml

)

);

$context = stream_context_create($setting);

$url = ''. $_SERVER['REQUEST_URI'];

$response = file_get_contents($url, null, $context);

echo $response;

CURL是可以的,但是参数设置比较麻烦。这种情况有一些现成的类库实现,提供一个简单的示例

如何在PHP中使用socket+XML发送数据包

接收指定IP的数据包,其他IP都要过滤吧,那就用防火墙来搞吧

使用的是client段的获取方式,用client的可以指定IP,代码大概如下

public void SendMessage()

{

ASCII = Encoding.ASCII;

// 构造用于发送的 字节缓冲.

Byte[] sendBytes = ASCII.GetBytes(SEND_MESSAGE);

// 构造用于接收的 字节缓冲.

Byte[] recvBytes = new Byte[256];

// IP地址.

IPAddress localAddr = IPAddress.Parse("192.168.19.81");

// 接入点.

IPEndPoint ephost = new IPEndPoint(localAddr, PORT);

// 第一个参数:AddressFamily = 指定 Socket 类的实例可以使用的寻址方案。

// Unspecified 未指定地址族。

// InterNetwork IP 版本 4 的地址。

// InterNetworkV6 IP 版本 6 的地址。

//

// 第二个参数:SocketType = 指定 Socket 类的实例表示的套接字类型。

// Stream 一个套接字类型,支持可靠、双向、基于连接的字节流,而不重复数据,也不保留边界。

// 此类型的 Socket 与单个对方主机通信,并且在通信开始之前需要建立远程主机连接。

// 此套接字类型使用传输控制协议 (Tcp),AddressFamily 可以是 InterNetwork,也可以是 InterNetworkV6。

//

// 第三个参数:ProtocolType = 指定 Socket 类支持的协议。

// Tcp 传输控制协议 (TCP)。

Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

try

{

// 尝试连接主机.

s.Connect(ephost);

//Console.WriteLine("向服务器发送到了:{0}", SEND_MESSAGE);

// 向主机发送数据.

// s.Send(sendBytes, sendBytes.Length, SocketFlags.None);

// 接收服务器的应答.

Int32 bytes = s.Receive(recvBytes, recvBytes.Length, SocketFlags.None);

StringBuilder buff = new StringBuilder();

// while (bytes 0)

// {

// 将缓冲的字节数组,装换为字符串.

// String str = ASCII.GetString(recvBytes, 0, bytes);

String str = "";

for (int i = 0; i recvBytes.Length; i++)

{

str = str + recvBytes[i];

}

int iCount = 0;

iCount = int.Parse(str.Substring(13, 6)) ;

// 加入字符串缓存

buff.Append(str);

// 再次接受,看看后面还有没有数据.

//bytes = s.Receive(recvBytes, recvBytes.Length, SocketFlags.None);

// }

textBox1.Text = iCount.ToString();

}

catch (Exception ex)

{

MessageBox.Show("连接/发送/接收过程中,发生了错误!");

MessageBox.Show(ex.Message);

//Console.WriteLine("连接/发送/接收过程中,发生了错误!");

//Console.WriteLine(ex.Message);

//Console.WriteLine(ex.StackTrace);

}

finally

{

s.Close();

}

php怎么发送xml数据到另一个页面。

这个其实很简单,

如果xml数据很少,你就把它当做一个字符串;

如果xml数据多,你可以把它json序列化,传过去,就行了。

PHp怎么获取网络传过来的xml文件

?php     

$xml_string = file_get_contents("php://input");

$xml_string = trim($xml_string);

$xml_object = simplexml_load_string($xml_string);

$xml_arr    = get_object_vars($xml_object);

只要别人访问你这个文件传递xml。你就能获取其中的信息了。


本文标题:php传输xml数据,php xml文件
网址分享:http://cdiso.cn/article/dsissei.html

其他资讯