-4

谁能想到某种预处理或可以采取的措施来减少这种可怕的冗长?

不断打字$this->让我发疯,为什么不能用与 $ 不同的符号来实现呢?$ 用于正常作用域 £ 用于$this->作用域。

谢谢你。

4

2 回答 2

2

不幸的是,这实际上是不可能的。除非您创建自己的 PHP 版本并更改解释器(出于多种原因,我强烈建议您不要这样做)。

更改$this->为您自己的东西也会极大地损害您的代码兼容性。特别是如果将来有人要处理您的代码。

如果你真的很难处理这个问题,我强烈建议你安装一个像 PHPStorm 这样的 IDE 或任何其他具有自动完成功能的 IDE,或者设置你自己的宏来为你输入它。

于 2016-09-21T07:10:31.487 回答
-1

Sed 来救援!这是我压缩一些冗长的代码。

运行.sh

#!/bin/bash
echo Running server
for f in ./src/*.php
do
    sed -f ./preprocess.sed $f > ./live/`basename $f`
done

cd live
php ./server.php

预处理.sed

s/£/$this->/g

之前/之后

    case TableState::INIT:
        $this->gone->reset($this->tableSpot, $this->tableNote);
        $this->state = TableState::WAITING;
        break;

之后

    case TableState::INIT:
        £gone->reset(£tableSpot, £tableNote);
        £state = TableState::WAITING;
        break;

正如其他人所说,这会使您的代码无法正常工作,因此您需要就如何预处理做足够的文档。但我认为sed -f ../preprocessor.sed ./*在源目录中将使其全部正常代码。

于 2016-09-21T09:46:46.220 回答