将 .Net 上的函数删除和替换转换为 PHP

Convert function Remove and Replace on .Net to PHP

让我用 ILSpy 显示我的反编译器结果,用于编程 Visual C# .NET 在这种情况下,老实说我仍然是编程语言的新手。这是Visual C# .NET反编译编码的片段:

private string Oye = "abcdefghijklmnopqrstuvwxyz0123456789";

这些是下面 Visual C# .NET 代码清单中的另一个 Class:

private void button1_Click(object sender, EventArgs e)
        {
            string text = this.Oye.Substring(6, 1);
            text += this.Oye.Substring(0, 1);
            text += this.Oye.Substring(13, 1);
            text += this.Oye.Substring(19, 1);
            text += this.Oye.Substring(4, 1);
            text += text.Substring(2, 1);
            text += text.Substring(0, 1);
            text += this.Oye.Substring(26, 5);
            text = text.Remove(10, 1);
            text = text.Replace(text.Substring(9, 1), text.Substring(7, 1));
            text = text.Replace(text.Substring(7, 1), this.Oye.Substring(28, 1));
            text = text.Replace(text.Substring(8, 2), this.Oye.Substring(26, 2));
            MD5 mD = MD5.Create();
            byte[] array = mD.ComputeHash(Encoding.UTF8.GetBytes(text));
            StringBuilder stringBuilder = new StringBuilder();
            for (int i = 0; i < array.Length; i++)
            {
                stringBuilder.Append(array[i].ToString("x2"));
            }
            if (this.textBox1.Text == text)
            {
                MessageBox.Show(stringBuilder.ToString(), "Success");
            }
            else
            {
                MessageBox.Show("Repeat Again");
            }
        }

到目前为止,我正在尝试在 PHP 上查找 $text 的结果,这些是我的 PHP 代码,用于将 .Net 转换为PHP :

<?php

    $Oye = "abcdefghijklmnopqrstuvwxyz0123456789";
    $text = substr($Oye, 6, 1);
    $text += substr($Oye, 0, 1);
    $text += substr($Oye, 13, 1);
    $text += substr($Oye, 4, 1);
    $text += substr($text, 2, 1);
    $text += substr($text, 0, 1);
    $text += substr($Oye, 26, 5);
    /* I'm confused for convert Visual C# .NET codes to PHP for "Remove" and "Replace" according from snip code Visual C# .NET above */

    echo $text;
?>

让我知道如何转换text = text.Remove(10, 1);text = text.Replace(text.Substring(9, 1), text.Substring(7, 1));(C#.NET 编程)到 PHP。我尝试在 PHP 上学习一些关于 substr_replace 和 str_replace 的参考,但我很困惑,不明白如何将上面的 C# .Net 的代码转换为 PHP 编程代码。

拜托,有人给我解决方案或示例如何将这些代码转换为 PHP 吗?我的一些 PHP 代码是否真的可以从 .NET 转换它?

非常感谢您对我问题的关注和解答。

真诚的, 拉图莱巴

PHP 相当于 text = text.Remove(10, 1);

$text = substr_replace($text, '', 10, 1);

PHP 相当于 text = text.Replace(text.Substring(9, 1), text.Substring(7, 1));

$text = str_replace(substr($text, 9, 1), substr($text, 7, 1), $text);

See demo

参考文献: substr_replace(), str_replace(), substr()

我已经根据 Mark M 建议从 .NET 更新了我的 PHP。 所以这些是我的 PHP 列表代码:

<?php

    $Oye = "abcdefghijklmnopqrstuvwxyz0123456789";
    $text = substr($Oye, 6, 1);
    $text += substr($Oye, 0, 1);
    $text += substr($Oye, 13, 1);
    $text += substr($Oye, 19, 1);
    $text += substr($Oye, 4, 1);
    $text += substr($text, 2, 1);
    $text += substr($text, 0, 1);
    $text += substr($Oye, 26, 5);

    /* I Follow some suggestion from Mark for this code bellow : */
    $text = substr_replace($text, '', 10, 1);

    /* I Follow some suggestion from Mark too */
    $text = str_replace(substr($text, 9, 1), substr($text, 7, 1), $text);
    $text = str_replace(substr($text, 7, 1), substr($Oye, 28, 1), $text);
    $text = str_replace(substr($text, 8, 2), substr($Oye, 26, 2), $text);

    echo $text;
?>

我的网络浏览器的结果是:1234

非常感谢并非常感谢您对上述案例的帮助,但如果我将 .Net(上面的反编译代码)重写为 C#,我得到了不同的答案。

下面是我的 C# 清单代码:

using System.IO;
using System;

class Program
{
    static void Main()
    {
     string str = "abcdefghijklmnopqrstuvwxyz0123456789";
     var text = str.Substring(6, 1);
     text += str.Substring(0, 1);

     text += str.Substring(13, 1);
     text += str.Substring(19, 1);
     text += str.Substring(4, 1);

     text += text.Substring(2, 1);
     text += text.Substring(0, 1);

     text += str.Substring(26, 5);

     text = text.Remove(10, 1);
     text = text.Replace(text.Substring(9, 1), text.Substring(7, 1));

     text = text.Replace(text.Substring(7, 1), str.Substring(28, 1));
     text = text.Replace(text.Substring(8, 2), str.Substring(26, 2));  

     Console.WriteLine(text);
    }
}

text 变量的结果是 ganteng2014

您有什么建议或建议吗?或者你可以给我一些重新更新 PHP 代码的方向吗?或者我的 C# 代码错了吗?因为 PHP 和 C# 的结果不同(1234 [PHP]ganteng2014[=29= 的结果][C# 上的结果])