1

初めて質問するので、気楽に聞いてください。他に何か必要なことがあれば、質問してください。

就職の面接のために、PHP と Postmark を使用して小さなメール アプリを作成する必要があります。UI は醜いですが、きれいである必要はありません。私の HTML レイアウト スキルは既に証明されています。だから、それは私が必要とするPHP機能です。

だから、私の実際の質問に: 次のコードを使用して配列を作成しています

$message = array(
    //'To' => filter_input(INPUT_POST, 'To'),
    //'From' => filter_input(INPUT_POST, 'From'),
    //'Cc' => filter_input(INPUT_POST, 'Cc'),
    //'Bcc' => filter_input(INPUT_POST, 'Bcc'),
    //'Subject' => filter_input(INPUT_POST, 'Subject'),
    //'TextBody' => filter_input(INPUT_POST, 'TextBody')
    'To' => "roderikmasure@gmail.com",
    'From' => "roderik@masure.org",
    'Cc' => "mistermorgoth666@gmail.com",
    'Subject' => "Test",
    'TextBody' => "Dit is een testmail, ik hoop dat het nu eindelijk werkt."
);

$client = new PostmarkClient("<API TOKEN>");

$sendResult = $client->sendEmailBatch($message);

かなり簡単で、問題はないはずです。それにもかかわらず、私は同じエラーが発生し続けます:

Warning: Invalid argument supplied for foreach() in /srv/www/sites/roderik/vendor/wildbit/postmark-php/src/Postmark/PostmarkClient.php on line 136 Warning: Invalid argument supplied for foreach() in /srv/www/sites/roderik/vendor/wildbit/postmark-php/src/Postmark/PostmarkClient.php on line 136 Warning: Invalid argument supplied for foreach() in /srv/www/sites/roderik/vendor/wildbit/postmark-php/src/Postmark/PostmarkClient.php on line 136 Warning: Invalid argument supplied for foreach() in /srv/www/sites/roderik/vendor/wildbit/postmark-php/src/Postmark/PostmarkClient.php on line 136 Warning: Invalid argument supplied for foreach() in /srv/www/sites/roderik/vendor/wildbit/postmark-php/src/Postmark/PostmarkClient.php on line 136 Parse error: syntax error, unexpected T_USE, expecting T_FUNCTION in /srv/www/sites/roderik/vendor/guzzlehttp/guzzle/src/Client.php on line 20

136 行目のコードを何度もチェックしましたが、エラーの原因がわかりません。

136行目のコードは次のとおりです(2行目は136です):

foreach ($emailBatch as $key => $email) {
        foreach ($email as $emailIdx => $emailValue) {
            if (strtolower($emailIdx) == 'headers') {
                $email[$emailIdx] = $this->fixHeaders($emailValue);
            }
        }
        array_push($final, $email);
    }

したがって、Postmark から自動生成されたファイルにエラーがあるようですが、修正方法がわかりません。

この問題を抱えていて、解決策を見つけた人はいますか? もしあなたが私を助けることができればそれは素晴らしいことです

Git リポジトリ

実際のアプリ (ftp サーバー)

どうもありがとうございました

編集 - ftp サーバーが PHP 5.3.3 を実行していることに気付きました。5.4 に更新してみます。ほとんどの問題はそれに関連していたようです。

4

1 に答える 1

2
$message = array(
    array(
        //'To' => filter_input(INPUT_POST, 'To'),
        //'From' => filter_input(INPUT_POST, 'From'),
        //'Cc' => filter_input(INPUT_POST, 'Cc'),
        //'Bcc' => filter_input(INPUT_POST, 'Bcc'),
        //'Subject' => filter_input(INPUT_POST, 'Subject'),
        //'TextBody' => filter_input(INPUT_POST, 'TextBody')
        'To' => "roderikmasure@gmail.com",
        'From' => "roderik@masure.org",
        'Cc' => "mistermorgoth666@gmail.com",
        'Subject' => "Test",
        'TextBody' => "Dit is een testmail, ik hoop dat het nu eindelijk werkt."
    )
);

$client = new PostmarkClient("f92ee11a-3de9-48ff-801e-1b6efc9afcdf");

$sendResult = $client->sendEmailBatch($message);

多次元であることが期待されます。やっぱりバッチです。

于 2015-10-20T14:39:11.200 に答える