-1

私は、php 構文に何らかの機能を追加することに興味がありましたが、言語のモジュールを作成することとは異なることは明らかです。これには、php.net Webサイトで入手できるCのリソースを編集する必要があり、当然Cプログラミングの知識が必要だと思っていました。単に私は以下をしたい:

xforeach ($array as $item with $counter) {
    echo "This is $counter time this loop is happening";
}

書くのではなく:

$counter = 0;
foreach ($array as $item) {
    echo "This is $counter time this loop is happening";
    $counter ++;
}

または、別の見方をすると、C# で可能なように、各クラスまたは関数に属性を追加します。

class MyClass {

    [Description("This is my php 6 version")]
    public function Test() {


    }
}

このアプローチを実現するための最初のステップは何ですか?

4

1 に答える 1

0

他の人がどのようにそれを行ったかを参照してください: http://hacklang.org/ (facebook から)

彼らはphpで独自の言語を構築します(最終的にphpにコンパイルされます)

あなたがすることは次のとおりです。

  1. 独自のファイル拡張子を定義します
  2. str_replace 独自のコードを php コード <= これがコンパイラになります。
  3. 作成した php コードを実行します。

注: これは、Twig などのテンプレート エンジンの動作方法でもあります。

落胆

最終的には、php を作成するか、C# を作成します。

  • Php は型チェックされていないため、ジェネリックは必要ありません。

注: 成功したとしても、コードを書き込むための IntelliSense を備えた IDE にはなりません。

なぜ C# のように php を作成したいのですか? C# でコーディングしないのはなぜですか?

注: vNext (MVC6) は、新しい Roslyn コンパイラを使用して、Linux サーバーでも実行できます。

于 2014-10-22T13:30:19.013 に答える