1

このライブラリを使用して、サーバーに Nexmo SMS サービスを実装しています。次のように Composer を使用してライブラリを要求しました。

"require" : {
"prawnsalad/nexmo": "dev-master"
}

ここで見つけて、READMEに含まれる指示に従ってください:

require 'vendor/autoload.php';
use NexmoMessage;
$phone = '123456789';
$sms = new NexmoMessage(NEXMO_KEY, NEXMO_SECRET);//defined in another file
$sms->sendText($phone, 'from', "yo");//$phone is a valid number in actual case

ただし、この質問のタイトルにエラーが表示され続けます。Composer がライブラリを正常にインポートしたことがわかり、NexmoMessage のクラスとコンストラクターが表示されますが、何らかの理由で、何をしてもこのエラーが発生し続けます。これがライブラリの問題なのか、Composer の使い方の問題なのかはわかりません。過去に Composer で問題が発生したことは一度もないので、なぜここでこれが起こっているのか不思議です。ありがとう

4

1 に答える 1

2

そのライブラリは、PSR-4 をサポートしていると述べています。つまり、PHP 名前空間を絶対に使用する必要がありますが、使用していません。8 か月前の最後のコミットhttps://github.com/prawnsalad/Nexmo-PHP-lib/commit/8e422c4f8f43c52acb70ebd5f9e7c6ff81a1f352は、自動読み込みを中断しました。そして、今日まで誰も気がつきませんでした。

ソース コードを見れば簡単にわかります。使用されている名前空間はありません。

あなたの最善の行動は、この問題を修正してプル リクエストを送信することです。Github では、ブラウザでファイルを編集できます。次善の策は、問題を作成して作成者に知らせることです。

于 2015-02-07T13:30:15.933 に答える