{"id":353,"date":"2014-04-28T19:36:41","date_gmt":"2014-04-29T01:36:41","guid":{"rendered":"http:\/\/veracitek.com\/blog\/?p=353"},"modified":"2020-01-03T16:25:59","modified_gmt":"2020-01-03T23:25:59","slug":"another-use-for-php","status":"publish","type":"post","link":"http:\/\/veracitek.com\/blog\/2014\/04\/another-use-for-php\/","title":{"rendered":"Yet Another Use for PHP"},"content":{"rendered":"<p>A recent project found us integrating an online SaaS with a MSSQL Order Entry system. The SaaS system used the hideous SOAP protocol, but PHP&#8217;s SoapClient class made quick work of that.<\/p>\n<p><em>&#8220;Unless you have a definitive reason to use SOAP use REST.&#8221;<br \/>\n<\/em><br \/>\nThe order entry system followed Microsoft&#8217;s version of the development bible and operated by calling dozens of stored procedures, sometimes many times (reduntantly) over again, with each click. Yet a call out to xp_cmdshell allowed us to exit that limited platform. Finally, speed, was impressive! On modern machinery PHP&#8217;s optimized and ultra thin C++ engine is a rocket ship.<\/p>\n<p>So despite the completely unorthodox strategy our client has again had their expectations exceeded. Once the code for their custom interface was moved to a PHP script all scope creep was easily conquered without any threat to the timeline nor any increase in cost. Win\/Win\/Win (The client\/The developer\/PHP).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A recent project found us integrating an online SaaS with a MSSQL Order Entry system. The SaaS system used the hideous SOAP protocol, but PHP&#8217;s SoapClient class made quick work of that. &#8220;Unless you have a definitive reason to use SOAP use REST.&#8221; The order entry system followed Microsoft&#8217;s version of the development bible and [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"twitterCardType":"","cardImageID":0,"cardImage":"","cardTitle":"","cardDesc":"","cardImageAlt":"","cardPlayer":"","cardPlayerWidth":0,"cardPlayerHeight":0,"cardPlayerStream":"","cardPlayerCodec":"","footnotes":""},"categories":[151,99],"tags":[195,296,293,13,295,291,294,298,297,292],"class_list":["post-353","post","type-post","status-publish","format-standard","hentry","category-good-tech","category-innovation-2","tag-c","tag-mssql","tag-order-entry","tag-php","tag-rest","tag-saas","tag-soap","tag-stored-procedures","tag-t-sql","tag-tax-api"],"_links":{"self":[{"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/posts\/353","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/comments?post=353"}],"version-history":[{"count":3,"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/posts\/353\/revisions"}],"predecessor-version":[{"id":357,"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/posts\/353\/revisions\/357"}],"wp:attachment":[{"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/media?parent=353"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/categories?post=353"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/veracitek.com\/blog\/wp-json\/wp\/v2\/tags?post=353"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}