草庐IT

php - Print_r 不返回任何东西; var_dump 显示 NULL

coder 2024-04-08 原文

我是网络开发新手,正在试验 Braintree 网络 Hook 。我正在使用他们的 create submerchant 示例代码来创建一个 submerchant,然后假设通知应该到达我的服务器,说明它是否成功。

我的方法:我刷新 submerchant.php 页面(我在 NameCheap 服务器上使用 Wordpress),然后 echo 显示“成功!”。然后我转到 webhooks.php 页面并刷新它。但是,var_dump 仅返回 NULL NULLprint_r 不返回任何内容。为什么 print_r 不显示任何内容?

submerchant.php - 这会在我设置 $one = 1 并为子商户设置新的 id 时创建子商户

<?php

require_once(__DIR__ . '/../braintree/lib/Braintree.php');

Braintree_Configuration::environment('sandbox');
Braintree_Configuration::merchantId('A');
Braintree_Configuration::publicKey('B');
Braintree_Configuration::privateKey('C');

 function fd_create_sm() {

    $one;

    $one = 1;

    if($one=1) {

    $merchantAccountParams = [
      'individual' => [
        'firstName' => 'Janez',
        'lastName' => 'Doe',
        'email' => 'jane@14ladders.com',
        'phone' => '5553334444',
        'dateOfBirth' => '1981-11-19',
        'ssn' => '456-45-4567',
        'address' => [
          'streetAddress' => '111 Main St',
          'locality' => 'Chicago',
          'region' => 'IL',
          'postalCode' => '60622'
        ]
      ],
      'business' => [
        'legalName' => 'Jane\'s Ladders',
        'dbaName' => 'Jane\'s Ladders',
        'taxId' => '98-7654321',
        'address' => [
          'streetAddress' => '111 Main St',
          'locality' => 'Chicago',
          'region' => 'IL',
          'postalCode' => '60622'
        ]
      ],
      'funding' => [
        'descriptor' => 'Red Ladders',
        'destination' => Braintree_MerchantAccount::FUNDING_DESTINATION_BANK,
        'email' => 'funding@blueladders.com',
        'mobilePhone' => '5555555555',
        'accountNumber' => '1123581321',
        'routingNumber' => '071101307'
      ],
      'tosAccepted' => true,
      'masterMerchantAccountId' => "na",
      'id' => "green_ladders"
    ];
    $result = Braintree_MerchantAccount::create($merchantAccountParams);

    $result->success;
    if($result->success) {
    echo 'Success!';
    } else {

    print_r($result->errors);

            $errordata;
            echo '***********';
            $BT_Errors = new Braintree_Error_ErrorCollection($errordata);
            echo '***********';
            $BT_Errors->deepAll();
            echo '***********';
            $BT_Errors->onHtmlField("transaction[amount]");

    }

    $result->merchantAccount->status;

    $result->merchantAccount->id;
    // "blue_ladders_store"
    $result->merchantAccount->masterMerchantAccount->id;
    // "14ladders_marketplace"
    $result->merchantAccount->masterMerchantAccount->status;
    // "active"

    } else {
    return;

    }
 }

fd_create_sm();

?>

webhooks.php

<?php

var_dump($_POST['bt_signature']);
var_dump($_POST['bt_payload']);

print_r($_POST['bt_signature']);
print_r($_POST['bt_payload']);

?>

最佳答案

很可能,输出数据存储在某个输出缓冲区中。如果您非常确定要以这种方式调试代码,请尝试在使用print_r 输出数据后立即添加wp_die(); 调用.这应该有所帮助!

还有一件事:有时一些代码(不是这种特殊情况)实际上由于更复杂的数据流而从未输出过。对于这种情况,使用一些第 3 方调试工具可能是个好主意,或者,如果您正在寻找更简单的解决方案,您可以将一些输出写入某个日志文件,然后检查该文件。

祝你好运!

关于php - Print_r 不返回任何东西; var_dump 显示 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34456929/

有关php - Print_r 不返回任何东西; var_dump 显示 NULL的更多相关文章

  1. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  2. ruby - 为什么 4.1%2 使用 Ruby 返回 0.0999999999999996?但是 4.2%2==0.2 - 2

    为什么4.1%2返回0.0999999999999996?但是4.2%2==0.2。 最佳答案 参见此处:WhatEveryProgrammerShouldKnowAboutFloating-PointArithmetic实数是无限的。计算机使用的位数有限(今天是32位、64位)。因此计算机进行的浮点运算不能代表所有的实数。0.1是这些数字之一。请注意,这不是与Ruby相关的问题,而是与所有编程语言相关的问题,因为它来自计算机表示实数的方式。 关于ruby-为什么4.1%2使用Ruby返

  3. ruby-on-rails - link_to 不显示任何 rails - 2

    我试图在索引页中创建一个超链接,但它没有显示,也没有给出任何错误。这是我的index.html.erb代码。ListingarticlesTitleTextssss我检查了我的路线,我认为它们也没有问题。PrefixVerbURIPatternController#Actionwelcome_indexGET/welcome/index(.:format)welcome#indexarticlesGET/articles(.:format)articles#indexPOST/articles(.:format)articles#createnew_articleGET/article

  4. ruby - 检查字符串是否包含散列中的任何键并返回它包含的键的值 - 2

    我有一个包含多个键的散列和一个字符串,该字符串不包含散列中的任何键或包含一个键。h={"k1"=>"v1","k2"=>"v2","k3"=>"v3"}s="thisisanexamplestringthatmightoccurwithakeysomewhereinthestringk1(withspecialcharacterslike(^&*$#@!^&&*))"检查s是否包含h中的任何键的最佳方法是什么,如果包含,则返回它包含的键的值?例如,对于上面的h和s的例子,输出应该是v1。编辑:只有字符串是用户定义的。哈希将始终相同。 最佳答案

  5. ruby-on-rails - RSpec:避免使用允许接收的任何实例 - 2

    我正在处理旧代码的一部分。beforedoallow_any_instance_of(SportRateManager).toreceive(:create).and_return(true)endRubocop错误如下:Avoidstubbingusing'allow_any_instance_of'我读到了RuboCop::RSpec:AnyInstance我试着像下面那样改变它。由此beforedoallow_any_instance_of(SportRateManager).toreceive(:create).and_return(true)end对此:let(:sport_

  6. ruby - Ruby 中的隐式返回值是怎么回事? - 2

    所以我开始关注ruby​​,很多东西看起来不错,但我对隐式return语句很反感。我理解默认情况下让所有内容返回self或nil但不是语句的最后一个值。对我来说,它看起来非常脆弱(尤其是)如果你正在使用一个不打算返回某些东西的方法(尤其是一个改变状态/破坏性方法的函数!),其他人可能最终依赖于一个返回对方法的目的并不重要,并且有很大的改变机会。隐式返回有什么意义?有没有办法让事情变得更简单?总是有返回以防止隐含返回被认为是好的做法吗?我是不是太担心这个了?附言当人们想要从方法中返回特定的东西时,他们是否经常使用隐式返回,这不是让你组中的其他人更容易破坏彼此的代码吗?当然,记录一切并给出

  7. ruby - 怎么来的(a_method || :other) returns :other only when assigning to a var called a_method? - 2

    给定以下方法:defsome_method:valueend以下语句按我的预期工作:some_method||:other#=>:valuex=some_method||:other#=>:value但是下面语句的行为让我感到困惑:some_method=some_method||:other#=>:other它按预期创建了一个名为some_method的局部变量,随后对some_method的调用返回该局部变量的值。但为什么它分配:other而不是:value呢?我知道这可能不是一件明智的事情,并且可以看出它可能有多么模棱两可,但我认为应该在考虑作业之前评估作业的右侧...我已经在R

  8. ruby-on-rails - ruby 日期方程不返回预期的真值 - 2

    为什么以下不同?Time.now.end_of_day==Time.now.end_of_day-0.days#falseTime.now.end_of_day.to_s==Time.now.end_of_day-0.days.to_s#true 最佳答案 因为纳秒数不同:ruby-1.9.2-p180:014>(Time.now.end_of_day-0.days).nsec=>999999000ruby-1.9.2-p180:015>Time.now.end_of_day.nsec=>999999998

  9. ruby - 从 String#split 返回的零长度字符串 - 2

    在Ruby1.9.3(可能还有更早的版本,不确定)中,我试图弄清楚为什么Ruby的String#split方法会给我某些结果。我得到的结果似乎与我的预期相反。这是一个例子:"abcabc".split("b")#=>["a","ca","c"]"abcabc".split("a")#=>["","bc","bc"]"abcabc".split("c")#=>["ab","ab"]在这里,第一个示例返回的正是我所期望的。但在第二个示例中,我很困惑为什么#split返回零长度字符串作为返回数组的第一个值。这是什么原因呢?这是我所期望的:"abcabc".split("a")#=>["bc"

  10. "\0"null 的 Ruby 测试? - 2

    我在破坏脚本的字符串中出现了一些奇怪的字符。据我所知,通过putbadstring到控制台,它们是"\0\0\0\0"。我想对此进行测试,以便我可以忽略它们...但是如何呢?以为这就是blank?和empty?的用途?!?:>badstring="\0"=>"\u0000">badstring.blank?NoMethodError:undefinedmethod`blank?'for"\u0000":Stringfrom(irb):97from/Users/meltemi/.rvm/rubies/ruby-2.0.0-p195/bin/irb:16:in`'>badstring.em

随机推荐