Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP fedex for web services邮政编码错误_Php_Fedex - Fatal编程技术网

PHP fedex for web services邮政编码错误

PHP fedex for web services邮政编码错误,php,fedex,Php,Fedex,因此,我尝试将fedex的web服务集成到php中。在此之前的表单为包的接收者获取所有必需的项。我所有的代码一直有效,直到我尝试从表单中添加$postal变量,如果我将85308硬编码到'PostalCode'=>'85308'中,它就可以工作,但是如果我将'85308'替换为'.$postal','它就不能工作。它给了我一条错误消息:目的地邮政编码丢失或无效 我在变量上使用了trim(),更改了它的名称,所有这些好东西仍然是不可能的 任何想法或意见将不胜感激我的代码如下 谢谢 <?php

因此,我尝试将fedex的web服务集成到php中。在此之前的表单为包的接收者获取所有必需的项。我所有的代码一直有效,直到我尝试从表单中添加$postal变量,如果我将85308硬编码到'PostalCode'=>'85308'中,它就可以工作,但是如果我将'85308'替换为'.$postal','它就不能工作。它给了我一条错误消息:目的地邮政编码丢失或无效

我在变量上使用了trim(),更改了它的名称,所有这些好东西仍然是不可能的

任何想法或意见将不胜感激我的代码如下

谢谢

<?php
//get address information$fname = $_POST["fname"];
$fname = $_POST["fname"];
$lname = $_POST["lname"];
$state = $_POST["state"];
$address1 = $_POST["address1"];
$address2 = $_POST["address2"];
$postal = $_POST["zip"];
$city = $_POST["city"];
$fullname = $fname." ".$lname;
$fulladdress = $address1." ".$address2;

function addRecipient(){
    $recipient = array(
        'Contact' => array(
            'PersonName' => ''.$fullname.'',
            'CompanyName' => 'Company Name',
            'PhoneNumber' => '9012637906'
        ),
        'Address' => array(
            'StreetLines' => array(''.$fulladdress.''),
            'City' => ''.$city.'',
            'StateOrProvinceCode' => ''.$state.'',
            //'PostalCode' => '85308',
            'PostalCode' => ''.$postal.'',
            'CountryCode' => 'US',
            'Residential' => false)
    );
    return $recipient;                  
}

在函数内部,变量不在您的作用域内。看

解决方案:

  • 导入函数中的变量
  • 将变量作为参数导入函数
  • 使用globals(丑陋)

在函数内部,变量超出了您的范围。看到了吗?我们能看到正在发布的表单吗?@Pekka是对的。我没有注意到函数addRecipient()的开头,因为formatting@Pekka佩卡,谢谢你!这件事把我逼疯了。我知道这是件很愚蠢的事。请用同样的评论回答问题,我会接受你的回答。