帮忙将C#代码转PHP代码

lzz0098 2018-04-12 11:59:46
帮忙将下面C#的代码转换成PHP的代码,谢谢!


<client>
<endpoint address="http:///sysNotifyTodoWebService"
binding="basicHttpBinding" bindingConfiguration="ISysNotifyTodoWebServiceServiceSoapBinding"
contract="OAService.ISysNotifyTodoWebService" name="ISysNotifyTodoWebServicePort">
<headers>
<RequestSOAPHeader xmlns:tns="testaa">
<tns:password>123</tns:password>
<tns:user>admin</tns:user>
</RequestSOAPHeader>
</headers>

</endpoint>
</client>
...全文
818 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2018-04-18
  • 打赏
  • 举报
回复
$p = array(
  'uri' => 'http://sysNotifyTodoWebService',
  'location' => 'http://sysNotifyTodoWebService?wsdl',
  'trace' => true,
  'soap_version' => SOAP_1_2,
);

$c = new SoapClient(null, $p);
$a = ['testaa' =>[ 'password' => 123, 'user' => 'admin']];
$h = new SoapHeader ( $p['uri'], 'testaa', $a,
     true, SOAP_ACTOR_NEXT );
$c->__setSoapHeaders ( array ($h ) );
但你给的身份信息对吗?
lzz0098 2018-04-18
  • 打赏
  • 举报
回复
引用 6 楼 u014294325 的回复:
sendTodo()是接口里的函数 不是在$client里 $client->sendTodo 这样是在调$client里的sendTodo函数 那当然没有啊 不清楚你那边是要做什么 看起来不是xml的读写 这里面没有哪里需要涉及到c#吧 即使是调的接口是.Net的WebService的,对php而言读取方法都是一样的 我猜一下,你这边是php 接口提供方是c# 你是不是要调接口读取了xml后修改节点内容 然后用接口提供的函数再POST提交?
情况是这样的,我做了个小软件,需要给公司的OA系统发送待办,公司里的人给了我“http:///sysNotifyTodoWebService?wsdl”,连接时,需要用帐号密码认证后才调用接口函数sendTodo()。但我现在是不懂如何去用帐号密码认证,及后续如何调用接口函数sendTodo()。首层里的那些代码是我用C#连接wsdl时,认证的一段代码。我想问的是有没有别的办法或用上面代码实现我的目地。能否帮忙解决,谢谢!
lzz0098 2018-04-18
  • 打赏
  • 举报
回复
引用 10 楼 xuzuning 的回复:
这种事情只有你自己解决 1、没有给出正确的用户名和口令 2、给出的 url 不是公网的
所有给的信息,都是在C#里测试通过的
xuzuning 2018-04-18
  • 打赏
  • 举报
回复
这种事情只有你自己解决 1、没有给出正确的用户名和口令 2、给出的 url 不是公网的
lzz0098 2018-04-18
  • 打赏
  • 举报
回复
引用 8 楼 xuzuning 的回复:
$p = array(
  'uri' => 'http://sysNotifyTodoWebService',
  'location' => 'http://sysNotifyTodoWebService?wsdl',
  'trace' => true,
  'soap_version' => SOAP_1_2,
);

$c = new SoapClient(null, $p);
$a = ['testaa' =>[ 'password' => 123, 'user' => 'admin']];
$h = new SoapHeader ( $p['uri'], 'testaa', $a,
     true, SOAP_ACTOR_NEXT );
$c->__setSoapHeaders ( array ($h ) );
但你给的身份信息对吗?
我照你的做了,结果报这个错,是哪里有问题啊 34: $post_data=array('appName'=> 'QIF','modelName'=> 'QIF','modelId'=> 'QIF1234567989','subject'=> '请处理QIF单新流程测试','link'=> 1,'createTime'=> '2018-1-15 0 0:00:00','targets' =>array('LoginName' =>'lizz')); 35: $endpoint = $c->sendTodo(array($post_data)); Fatal error: Uncaught SoapFault exception: [HTTP] Internal Server Error in D:\PHPnow\htdocs\QIF201708\cysl\newsendoatest1.php:35 Stack trace: #0 [internal function]: SoapClient->__doRequest('<?xml version="...', 'http://oa.haima...', 'http://oa.haima...', 2, 0) #1 D:\PHPnow\htdocs\QIF201708\cysl\newsendoatest1.php(35): SoapClient->__call('sendTodo', Array) #2 D:\PHPnow\htdocs\QIF201708\cysl\newsendoatest1.php(35): SoapClient->sendTodo(Array) #3 {main} thrown in D:\PHPnow\htdocs\QIF201708\cysl\newsendoatest1.php on line 35
lzz0098 2018-04-13
  • 打赏
  • 举报
回复
引用 4 楼 u014294325 的回复:
$Data = " <client> <endpoint address="http:///sysNotifyTodoWebService" binding="basicHttpBinding" bindingConfiguration="ISysNotifyTodoWebServiceServiceSoapBinding" contract="OAService.ISysNotifyTodoWebService" name="ISysNotifyTodoWebServicePort"> <headers> <RequestSOAPHeader xmlns:tns="testaa"> <tns:password>123</tns:password> <tns:user>admin</tns:user> </RequestSOAPHeader> </headers> </endpoint> </client>"; $Xml = simplexml_load_string($Data); 子节点 $client = $Xml->client; $endpoint = $client->endpoint; 属性值 foreach($endpoint->attributes() as $a => $b) { echo $a,'="',$b,"\"<br>"; }
http:///sysNotifyTodoWebService中有个接口函数sendTodo(),如果调用?,为什么我这样调用后提示Call to a member function sendTodo() on a non-object $client = $Xml->client; $endpoint = $client->sendTodo($post_data);
Amy安 2018-04-13
  • 打赏
  • 举报
回复
sendTodo()是接口里的函数 不是在$client里 $client->sendTodo 这样是在调$client里的sendTodo函数 那当然没有啊 不清楚你那边是要做什么 看起来不是xml的读写 这里面没有哪里需要涉及到c#吧 即使是调的接口是.Net的WebService的,对php而言读取方法都是一样的 我猜一下,你这边是php 接口提供方是c# 你是不是要调接口读取了xml后修改节点内容 然后用接口提供的函数再POST提交?
Amy安 2018-04-12
  • 打赏
  • 举报
回复
$Data = " <client> <endpoint address="http:///sysNotifyTodoWebService" binding="basicHttpBinding" bindingConfiguration="ISysNotifyTodoWebServiceServiceSoapBinding" contract="OAService.ISysNotifyTodoWebService" name="ISysNotifyTodoWebServicePort"> <headers> <RequestSOAPHeader xmlns:tns="testaa"> <tns:password>123</tns:password> <tns:user>admin</tns:user> </RequestSOAPHeader> </headers> </endpoint> </client>"; $Xml = simplexml_load_string($Data); 子节点 $client = $Xml->client; $endpoint = $client->endpoint; 属性值 foreach($endpoint->attributes() as $a => $b) { echo $a,'="',$b,"\"<br>"; }
Zerolone 2018-04-12
  • 打赏
  • 举报
回复
PHP有读取xml的方法。具体你可以下载PHP manual看看。
lzz0098 2018-04-12
  • 打赏
  • 举报
回复
引用 1 楼 wangsdong 的回复:
这仅仅是一个xml格式的代码,不是C#代码,无需转PHP。 PHP可以直接使用这个代码
那后面如果直接使用,能教教吗
php_wsd 2018-04-12
  • 打赏
  • 举报
回复
这仅仅是一个xml格式的代码,不是C#代码,无需转PHP。 PHP可以直接使用这个代码
c#数据库系统心得体会 数据库课程设计主要的目标是利用课程中学到的数据库知识和技术较好的开发设计出数 据库应用系统,去解决各行各业信息化处理的要求。下面是带来的,仅供参考。 c#数据库系统心得体会一: 这次数据库课程设计用的是Microsoft Visual FoxPro 6.0 ,而我们平时用的Microsoft SQL Server 20xx,虽然对VFP完全陌生,但在老师的指引下,我们近乎完美的完成了课程设计。当然 过程是艰辛的。 面对着完全陌生的操作环境VFP,许多同学开始埋怨,要求用SQL,用我们学过的ASP等来 完成设计。但我们慢慢发现用VFP做课程设计其实很有优势,于是它的这个优势激发了我 们去了解它的欲望。老师先将VFP中基本的建数据库,建表以及建表单等向我们演示了一 遍,我们也仿照着做了,发觉并不是很难。但想到这次课程设计做的是一套学生学籍和 成绩管理系统,我们又开始茫然了。那天,老师给我们看了一段可以让文字循环移动的 代码,这使我们产生了好奇心理,有了快速了解它的冲动。因为用面向对象的语言做特 效,这还是第一次。下课之后我把那段我们不了解的语言写的特效代码发到了VFP论坛上 请人帮忙解释,最后我们完全理解了那段代码的意思。 这次课程设计我们克服了炎热的天气(学校机房之前没装空调……后来设计完才装……),也 克服对新知识的恐惧感以及畏难情绪。我们懂得了团队合作的重要性,也懂得了团队中 如何交流、如何分工,如何集体讨论难点。我们充分利用了网络资源(技术论坛,共享的 实例等)。 我们喜欢这次课程设计的感觉,喜欢编程,喜欢团队交流。 c#数据库系统心得体会二: 在我看来,数据库课程设计主要的目标是利用课程中学到的数据库知识和技术较好的开 发设计出数据库应用系统,去解决各行各业信息化处理的要求。通过这次的课程设计, 可以巩固我们对数据库基本原理和基础理论的理解,掌握数据库应用系统设计开发的基 本方法,进一步提高我们综合运用所学知识的能力。 当我们这组决定做大学生就业咨询系统时,我们并没有着手写程序。而是大家一起商量 这个系统概述、系统目标、系统需求、业务流程分析、数据流程分析和数据词典。当这 些都准备好了之后,我们进行模块的分工。每个人都有自己的模块设计,而且写出来的 代码要求可以实现相应模块的功能,得到理想的效果。当每个人都把自己的分工做好了 ,最后会由一个人把这些全部组合搭建在一起。我们使用的是Html和php相互嵌套使用, 当一个系统做好了之后,我会好好地把程序都看一遍,理会其中的奥秘。 我所负责的是数据库的备份和还原还有一些界面的实现。还记得自己刚接触html的时候 ,觉得很感兴趣,所以有一段时间几乎到了痴迷的程度。然而Php是我刚接触不久的一种 编程语言。不过觉得它的功能真的很强大,可以开发出很多大型的系统。但是在做备份 和还原的时候,要考虑的东西还是很多的。当我遇到错误的时候,感到很受打击。值得 欣慰的是,在同学的帮助和大量参考书的查阅下,我把自己的模块做好了。这就是我收 获最大的地方。而且,我明白了遇到困难永不放弃的重要性,我知道了团队合作的重要 性,我领悟了只有坚持不懈才会取得胜利。 知识的获得是无止境的,只要你想学,只要你行动,没有什么会难倒我们的。回首这一 个多星期的课程设计,我很欣慰。因为我有了动力,有了勇气。谢谢老师对我们的不懈 帮助,谢谢学校给了我们这一次实践的机会,也谢谢组员们的关怀。这些美好的回忆美 好的东西将永远伴随着我。 c#数据库系统心得体会三: 数据库课程设计大赛的尘嚣渐渐远去,怀着对这次大赛的些许不舍,怀着对当初课程设 计开始时候的豪情万丈的决心的留恋,怀着通过这次课程设计积累的信心与斗志,我开 始写这篇文章,为自己的足迹留下哪怕是微不足道但是对自己弥足珍贵的痕迹并期望与 大家共勉。 首先,让我的记忆追溯到大二暑假,在老大的指引下(老大劝我学asp.net),我接触到m icrosoft 公司的.net产品。那个时候我已经学过vc和asp,因为windows程序设计实验的课的关系 ,接触过vb,但是没有专门去学他,因为习惯了c++里面的class,int,觉得vb的sub, var 看着就不是很顺心。我是一个好奇心很强的人,突然看到了一个号称".net是用于创建下 一代应用程序的理想而又现实的开发工具",而且主推c#语言,由于对c语言的一贯好感 ,我几乎是立刻对他产生了兴趣。我就开始了对c#的学习,任何语言都不是孤立存在的 ,所以数据交互是很重要的,暑假的时候我把我们这学期的课本数据库系统概论看了一 遍。我记得以前用c语言编程的时候,数据是在内存中申请空间,譬如使用数组等等。很 耗费内存空间。这个时候就是数据库站出来的时候啦,于是我又装上了sql server20xx,以前学a

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧