【问题标题】:How to Convert JavaScript keyboard-transformation function into PHP Code?如何将 JavaScript 键盘转换功能转换为 PHP 代码?
【发布时间】:2020-09-02 06:24:51
【问题描述】:

谁能帮我把这段 JavaScript 代码转换成 PHP?我已经尝试将其转换为 PHP,但它只返回错误。

function TransformedText () { 
  this.horizontalFlipValue = [];
}

// Horizontal Flip Function this is  method prototype
TransformedText.prototype.horizontalFlip = function (outputtedText) {
  this.horizontalFlipValue = []; 
  for (var i = 0; i < outputtedText.length; i ++)
  {
    //Find which array character is in
    if ($.inArray(outputtedText[i], row1) != -1) {  
      //Find place value of character in array
      charactersPlaceInArray = row1.indexOf(outputtedText[i], row1);
      this.horizontalFlipValue.push(row1[(row1.length - 1) - charactersPlaceInArray]);
    }
  }
  outputtedText = this.horizontalFlipValue;
}

这是我目前所拥有的:

    public function __construct () {
        $this->horizontalFlipValue = [];
    }

    public function flipHorizontal($outputtedText) { 
        $this->horizontalFlipValue = [];
        for ($i = 0; $i < count($this->outputtedText); $i++) {
            if(in_array($outputtedText[$i], $row1) != -1) {
                $charactersPlaceInArray = $row1.strpos(count($outputtedText[i]),$row1);
                $this->horizontalFlipValue.push($row1[(count($row1)-1)-$charactersPlaceInArray]);
            }
        }
    $outputtedText = $this->horizontalFlipValue;
    }   
}

【问题讨论】:

  • 您看到返回什么错误?
  • 有点抽象,能有这个函数的传入和传出数据的例子吗?
  • @MisterJojo 这些转换适用于标准 qwerty 键盘上的 4 行 x 10 列键部分。这 4 行分别以 1、q、a、z 开始,并分别扩展到 0、p、;、/。该函数将水平翻转键盘的所有行(例如,1 将与 0 交换,2 与 9 交换,等等)。
  • @BDD 我尝试将 JavaScript 的 inArray, indexOf and push 函数更改为 PHP 函数。

标签: javascript php function converters


【解决方案1】:

这些转换适用于标准 qwerty 键盘上 4 行 x 10 列的按键部分。这 4 行分别以 1、q、a、z 开始并分别扩展到 0、p、;、/。该函数将水平翻转键盘的所有行(例如,1 将与 0 交换,2 与 9 交换,等等)。

我可以很容易地回答:

const doInverseString =s=>[...s].reverse().join('')

console.log ( doInverseString( '1234567890') )  // 0987654321
console.log ( doInverseString( 'qwertyuiop') )  // poiuytrewq

【讨论】:

  • 好的,谢谢,但不只是颠倒过来。例如,当我尝试只输入一个“q”字符时,它会返回“p”。
【解决方案2】:

感谢您的帮助,但我已经解决了错误。尝试将“JavaScript 的 inArray、indexOf 和 push 函数”更改为 PHP 中的类似函数时发生错误。 jQuery 的 inArray 与 PHP 中的 in_array 函数相同。 JavaScript 的 indexOf 类似于 PHP 的 array_searchpush 类似于 PHP 中的 array_push

function TransformedText($outputtedText) {
    $cOutputText = count($outputtedText);
    $charactersPlaceInArray;
    $horizontalFlipValue = [];
    for ($i = 0; $i < $cOutputText; $i++){
        if(in_array($outputtedText[$i], $row1)){
            $charactersPlaceInArray = array_search($outputtedText[$i], $row1);
            array_push($horizontalFlipValue, $row1[($cRow1 -1 ) - $charactersPlaceInArray]);
        }
$outputtedText = $horizontalFlipValue;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-24
    • 2019-11-10
    • 2018-08-19
    • 1970-01-01
    • 2021-10-03
    • 2012-02-25
    • 2022-12-02
    相关资源
    最近更新 更多