【问题标题】:Freshbooks API show detailsFreshbooks API 显示详细信息
【发布时间】:2013-01-31 06:53:42
【问题描述】:

我正在使用这里的 php 库,但遇到了一个小问题。

要获取发票 118868 的一些信息,我可以这样做

<?php
$invoice_id=118868;

$invoice=$freshbooks->invoiceGet($invoice_id);
print_r($invoice);
?>

这是 print_r 的输出

Class Object ( [@attributes] => stdClass Object ( [status] => ok ) [invoice] => stdClass Object ( [invoice_id] => 00000219023 [estimate_id] => stdClass Object ( ) [number] => 8822 [client_id] => 83 [contacts] => stdClass Object ( [contact] => stdClass Object ( [contact_id] => 0 ) ) [recurring_id] => stdClass Object ( ) [organization] => Jimmy Thwart [first_name] => stdClass Object ( ) [last_name] => stdClass Object ( ) [p_street1] => stdClass Object ( ) [p_street2] => stdClass Object ( ) [p_city] => stdClass Object ( ) [p_state] => stdClass Object ( ) [p_country] => stdClass Object ( ) [p_code] => stdClass Object ( ) [po_number] => 10002 [status] => sent [amount] => 16.90 [amount_outstanding] => 16.90 [paid] => 0.00 [date] => 2013-01-31 00:00:00 [notes] => stdClass Object ( ) [terms] => Your slot can only be secured upon payment. Any reservation made before payment will only be guaranteed for 2 days. [discount] => 0 [url] => https://example.freshbooks.com/view/vgPb2TNGCR7n8JV [auth_url] => https://example.freshbooks.com/invoices/219023 [links] => stdClass Object ( [client_view] => https://example.freshbooks.com/view/vgPb2TNGCR7n8JV [view] => https://example.freshbooks.com/invoices/219023 [edit] => https://example.freshbooks.com/invoices/219023/edit ) [return_uri] => stdClass Object ( ) [updated] => 2013-01-31 02:25:13 [currency_code] => SGD [language] => en [vat_name] => stdClass Object ( ) [vat_number] => stdClass Object ( ) [folder] => active [staff_id] => 1 [lines] => stdClass Object ( [line] => stdClass Object ( [line_id] => 1 [name] => Lady 1pax [description] => Services (1 pax) [unit_cost] => 16.90 [quantity] => 1 [amount] => 16.90 [tax1_name] => stdClass Object ( ) [tax2_name] => stdClass Object ( ) [tax1_percent] => 0 [tax2_percent] => 0 [compound_tax] => 0 [type] => Item ) ) [gateways] => stdClass Object ( [gateway] => stdClass Object ( [name] => PayPal ) ) ) ) 

我希望输出只能是 URL 而不是整段代码。 想要的输出:

https://example.freshbooks.com/view/vgPb2TNGCR7n8JV

但是,它列出了发票的所有信息。如何仅获取发票 URL?

【问题讨论】:

  • 你能在print_r();中显示它打印的内容吗?
  • 再看我上面的问题。刚刚添加到

标签: php freshbooks-api


【解决方案1】:

好吧,使用您的代码输出,您可以看到$invoice 的元素是什么。使用你需要的那个。

【讨论】:

  • 你认为这是一个答案吗?你为什么不使用 cmets 来代替呢?
  • 当一个真正的问题发布时,我会写一个真正的答案。就目前而言,这是我愿意去的地方。在我考虑为他做更多工作之前,OP 必须展示 一些 研究工作,你也应该这样做!这个答案包含的信息足以让 OP 找到他的解决方案。
  • 好的,假设我想要一个项目的数量,我可以看到它是[数量] => 1。我如何输出这个?
  • 顺便说一句,我愿意做更多的研究,但话虽如此,我无法对此进行更多的研究,因为这不是我的强项。我环顾了 2 个小时以找到一些示例,但找不到任何示例
  • @EmersonF:您现在拥有的代码会生成一些输出。它是什么?从那里去。
【解决方案2】:

Invoice 是一个类的实例。您应该像对待所有实例一样对待它。

要获取 URL 值,您可以执行以下操作:

<?php
$invoice_id=118868;

$invoice=$freshbooks->invoiceGet($invoice_id);
print $invoice->url;
?>

或者您正在寻找另一个可能的值:

<?php
$invoice_id=118868;

$invoice=$freshbooks->invoiceGet($invoice_id);
print $invoice->links->client_view;
?>

根据official API doc&lt;url&gt; 不再支持,因此您应该使用&lt;links&gt;“元素为您的客户提供发票的直接链接,以供编辑、客户查看和管理员查看。”

【讨论】:

  • 谢谢!这就是我一直在寻找的那种答案,但是仍然不起作用。我试过回显,但我的页面还是空白..
  • 您似乎遇到了错误。在脚本的开头添加ini_set('display_errors','1');——这将帮助您查看是否存在错误。
猜你喜欢
  • 2019-09-23
  • 2016-07-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多