【发布时间】:2020-02-25 16:04:35
【问题描述】:
我正在尝试在 laravel 中安装一个 php 包。使用作曲家安装后,找不到问题特征类。
第一步:
{
"require": {
"avalara/avataxclient": "*"
}
}
删除此行后require __DIR__ . '/vendor/autoload.php';
我的控制器脚本是
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class AvaController extends Controller
{
// Include the AvaTaxClient library
use Avalara\AvaTaxClient;
// Create a new client
public function avatax(){
$client = new Avalara\AvaTaxClient('phpTestApp', '1.0', 'localhost', 'sandbox');
$client->withSecurity('', '');
// If I am debugging, I can call 'Ping' to see if I am connected to the server
$p = $client->ping();
echo('<h2>Ping</h2>');
echo('<pre>' . json_encode($p, JSON_PRETTY_PRINT) . '</pre>');
if ($p->authenticated == true) {
echo '<p>Authenticated!</p>';
}
// Create a simple transaction for $100 using the fluent transaction builder
$tb = new Avalara\TransactionBuilder($client, "DEFAULT", Avalara\DocumentType::C_SALESINVOICE, 'ABC');
$t = $tb->withAddress('SingleLocation', '123 Main Street', null, null, 'Irvine', 'CA', '92615', 'US')
->withLine(100.0, 1, null, "P0000000")
->create();
echo('<h2>Transaction #1</h2>');
echo('<pre>' . json_encode($t, JSON_PRETTY_PRINT) . '</pre>');
// Now, let's create a more complex transaction!
$tb = new Avalara\TransactionBuilder($client, "DEFAULT", Avalara\DocumentType::C_SALESINVOICE, 'ABC');
$t = $tb->withAddress('ShipFrom', '123 Main Street', null, null, 'Irvine', 'CA', '92615', 'US')
->withAddress('ShipTo', '100 Ravine Lane', null, null, 'Bainbridge Island', 'WA', '98110', 'US')
->withLine(100.0, 1, null, "P0000000")
->withLine(1234.56, 1, null, "P0000000")
->withExemptLine(50.0, null, "NT")
->withLine(2000.0, 1, null, "P0000000")
->withLineAddress(Avalara\TransactionAddressType::C_SHIPFROM, "123 Main Street", null, null, "Irvine", "CA", "92615", "US")
->withLineAddress(Avalara\TransactionAddressType::C_SHIPTO, "1500 Broadway", null, null, "New York", "NY", "10019", "US")
->withLine(50.0, 1, null, "FR010000")
->create();
echo('<h2>Transaction #2</h2>');
echo('<pre>' . json_encode($t, JSON_PRETTY_PRINT) . '</pre>');
}
}
当我尝试运行这个脚本时,我得到了这个错误:
(1/1) FatalErrorException 特征 'App\Http\Controllers\Avalara\AvaTaxClient' 未找到
在 AvaController.php 第 8 行
如果我在这里遗漏了什么,请告诉我。 谢谢
【问题讨论】:
-
use Avalara\AvaTaxClient;应该不在您的班级范围内吗?我希望这些不是你的真实凭据 -
确保
use Avalara\AvaTaxClient; -
两件事; 1. 包含
AvaTaxClient的use语句应该在类定义之外,例如在use IllimunateHttp\Request;下 2. 在composer.json中添加要求后,您是否运行composer install? -
如果您通过在 composer.json 文件中写入包名来安装包,那么您应该先执行
composer update,然后执行composer install。 -
@@ use Avalara\AvaTaxClient outside class 同样的错误,请帮忙
标签: php laravel composer-php