Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Parse Error

オープン
#134 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
35/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
php
領域
testing

調査の方向性

報告されている loadConfiguration($configFile) の例と PHP 7.0.10 を使って変換を再現し、その後、生成されたコードで言及されているエントリーポイント FilterInjectorTransformer::rewrite を調べます。変換後の foreach/require 式が正常にパースされ、元の反復動作が維持されれば、修正は完了です。

索引モデルが issue の本文から書いたものです。

説明

Case:
Framework: Yii2 2.0.11.2
PHP: 7.0.10
AspeckMock 2.0.1
info On ver. 1.0.0 works fine

AspectMock wrong parsing, convert and write to temporary storage this piece of code:

original code

protected function loadConfiguration($configFile)
    {
        $this->stdout("Loading configuration from '{$configFile}'...\n");
        foreach (require($configFile) as $name => $value) {
            if (property_exists($this, $name) || $this->canSetProperty($name)) {
                $this->$name = $value;
            } else {
                throw new Exception("Unknown configuration option: $name");
            }
        }

        $this->getAssetManager(); // check if asset manager configuration is correct
    }

after convert with AspeckMock

protected function loadConfiguration($configFile)
    { if (($__am_res = __amock_before($this, __CLASS__, __FUNCTION__, array($configFile), false)) !== __AM_CONTINUE__) return $__am_res; 
        $this->stdout("Loading configuration from '{$configFile}'...\n");
        foreach (require \Go\Instrument\Transformer\FilterInjectorTransformer::rewrite(($configFile) as $name => $value, '<dirPath>')) {
            if (property_exists($this, $name) || $this->canSetProperty($name)) {
                $this->$name = $value;
            } else {
                throw new Exception("Unknown configuration option: $name");
            }
        }

        $this->getAssetManager(); // check if asset manager configuration is correct
    }

Problem with parse:

foreach (require \Go\Instrument\Transformer\FilterInjectorTransformer::rewrite(($configFile) as $name => $value, '<dirPath>'))

Error

Exception 'ParseError' with message 'syntax error, unexpected 'as' (T_AS), expecting ',' or ')''
主要言語
PHP
スター
784
フォーク
132
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

Codeception/AspectMock のほかの issue

Codeception/AspectMock の issue をすべて見る

似ている issue

PHP の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。