3v4l.org

run code in 300+ PHP versions simultaneously
<?php $regex = '(?<!<br>)(?<!\s)\s*(\((?:(?:(?!<br>|\(|\)).)*(?:\((?:(?!<br>|\(|\)).)*\))?)*?\))\s*(\{)'; $test_string = '<br> var allowed = true, human_exists = true, stop_computers = false, current_player_number = 1, row_amount = 6, column_amount = 7;<br> function check_board () {<br> computer_number = current_player_number;<br> other_player_number = (computer_number === 1) ? 2 : 1;<br> var board = {};<br> $(""STRING"").each(function () {<br> if ($(this).hasClass(""STRING"" + other_player_number)) {<br> board[this.id] = 1;<br> }<br> else if ($(this).hasClass(""STRING"" + computer_number)) {<br> board[this.id] = 2;<br> }<br> else {<br> board[this.id] = 0;<br> }<br> });<br> board = {""STRING"": JSON.stringify(board), ""STRING"": column_amount, ""STRING"": row_amount};<br> $.ajax ({<br> type: ""STRING"",<br> url: ""STRING"",<br> data: board,<br> success: function (data) {<br> input = board;<br> output = data;<br> board = JSON.parse(data);<br> if (!board[""STRING""] ""SYMBOL""""SYMBOL"" board[""STRING""] === false) {<br> $(""STRING"").html($(""STRING"" + other_player_number + ""STRING"").html());<br> $(""STRING"")[0].style.backgroundColor = (other_player_number === 1) ? ""STRING"": ""STRING"";<br> current_player_number = other_player_number;<br> allowed = true;<br> }<br> else if (board[""STRING""]) {<br> $(""STRING"").html(""STRING"");<br> $(""STRING"").html(""STRING"");<br> $(""STRING"")[0].style.display = ""STRING"";<br> current_player_number = null;<br> }<br> else {<br> if (board[""STRING""] === 1 || board[""STRING""] === ""STRING"") {<br> $(""STRING"").html($(""STRING"" + other_player_number + ""STRING"").html() + ""STRING"");<br> $(""STRING"").html(""STRING"");<br> $(""STRING"")[0].style.display = ""STRING"";<br> $(""STRING"" + other_player_number + ""STRING"").html(parseInt($(""STRING"" + other_player_number + ""STRING"").html(), 10) + 1);<br> }<br> else {<br> $(""STRING"").html($(""STRING"" + computer_number + ""STRING"").html() + ""STRING"");<br> $(""STRING"").html(""STRING"");<br> $(""STRING"")[0].style.display = ""STRING"";<br> $(""STRING"" + computer_number + ""STRING"").html(parseInt($(""STRING"" + computer_number + ""STRING"").html(), 10) + 1);<br> }<br> current_player_number = null;<br> }<br> },<br> fail: function (one, two, three) {<br> console.log(one);<br> console.log(two);<br> console.log(three);<br> }<br> });<br> }<br> function computer_turn_process () {<br> allowed = false;<br> computer_number = current_player_number;<br> other_player_number = (computer_number === 1) ? 2 : 1;<br> var board = {};<br> $(""STRING"").each(function () {<br> if ($(this).hasClass(""STRING"" + other_player_number)) {<br> board[this.id] = 1;<br> }<br> else if ($(this).hasClass(""STRING"" + computer_number)) {<br> board[this.id] = 2;<br> }<br> else {<br> board[this.id] = 0;<br> }<br> });<br> board = {""STRING"": JSON.stringify(board), ""STRING"": true, ""STRING"": column_amount, ""STRING"": row_amount};<br> $.ajax ({<br> type: ""STRING"",<br> url: ""STRING"",<br> data: board,<br> success: function (data) {<br> input = board;<br> output = data;<br> board = JSON.parse(data);<br> for (var index_new = 0;<br> index_new ""SYMBOL"" (row_amount * column_amount);<br> index_new++) {<br> if (board[index_new] === 1) {<br> if (computer_number !== other_player_number) {<br> $(""STRING"" + index_new).removeClass(""STRING"" + computer_number).addClass(""STRING"" + other_player_number);<br> }<br> }<br> else if (board[index_new] === 2) {<br> if (computer_number !== other_player_number) {<br> $(""STRING"" + index_new).removeClass(""STRING"" + other_player_number).addClass(""STRING"" + computer_number);<br> }<br> }<br> }<br> if (!board[""STRING""] ""SYMBOL""""SYMBOL"" board[""STRING""] ""SYMBOL""""SYMBOL"" board[""STRING""] === false) {<br> $(""STRING"").html($(""STRING"" + other_player_number + ""STRING"").html());<br> $(""STRING"")[0].style.backgroundColor = (other_player_number === 1) ? ""STRING"": ""STRING"";<br> current_player_number = other_player_number;<br> if (human_exists) {<br> allowed = true;<br> }<br> else if (!stop_computers) {<br> computer_turn_process ();<br> }<br> }<br> else if (board[""STRING""]) {<br> $(""STRING"").html(""STRING"");<br> $(""STRING"").html(""STRING"");<br> $(""STRING"")[0].style.display = ""STRING"";<br> current_player_number = null;<br> }<br> else {<br> if (board[""STRING""] === 1 || board[""STRING""] === ""STRING"") {<br> $(""STRING"").html($(""STRING"" + other_player_number + ""STRING"").html() + ""STRING"");<br> $(""STRING"").html(""STRING"");<br> $(""STRING"")[0].style.display = ""STRING"";<br> $(""STRING"" + other_player_number + ""STRING"").html(parseInt($(""STRING"" + other_player_number + ""STRING"").html(), 10) + 1);<br> }<br> else {<br> $(""STRING"").html($(""STRING"" + computer_number + ""STRING"").html() + ""STRING"");<br> $(""STRING"").html(""STRING"");<br> $(""STRING"")[0].style.display = ""STRING"";<br> $(""STRING"" + computer_number + ""STRING"").html(parseInt($(""STRING"" + computer_number + ""STRING"").html(), 10) + 1);<br> }<br> current_player_number = null;<br> }<br> },<br> fail: function (one, two, three) {<br> console.log(one);<br> console.log(two);<br> console.log(three);<br> }<br> });<br> }<br> $(""STRING"").each(function () {<br> this.innerHTML = ""STRING"";<br> });<br> function human_and_computer_turns (noclick) {<br> human_exists = true;<br> if ($(""STRING"").val() === ""STRING"") {<br> computer_number = 2;<br> }<br> else {<br> computer_number = 1;<br> }<br> other_player_number = (computer_number === 1) ? 2 : 1;<br> if (noclick !== ""STRING"") {<br> column = Math.floor(this.id % column_amount);<br> if (allowed) {<br> allowed = false;<br> for (var index = column + (column_amount * (row_amount - 1));<br> index ""SYMBOL""= column;<br> index -= column_amount) {<br> if (!$(""STRING"" + index).hasClass(""STRING"" + computer_number) ""SYMBOL""""SYMBOL"" !$(""STRING"" + index).hasClass(""STRING"" + other_player_number)) {<br> $(""STRING"" + index).addClass(""STRING"" + other_player_number);<br> $(""STRING"").html($(""STRING"" + computer_number + ""STRING"").html());<br> current_player_number = computer_number;<br> $(""STRING"")[0].style.backgroundColor = (other_player_number === 1) ? ""STRING"" : ""STRING"";<br> computer_turn_process(computer_number);<br> break;<br> }<br> else if (index === column) {<br> ""COMMENT""allowed = true;<br> }<br> }<br> }<br> }<br> else {<br> allowed = false;<br> computer_turn_process(computer_number);<br> }<br> }<br> function human_only_turns () {<br> human_exists = true;<br> other_player_number = (current_player_number === 1) ? 2 : 1;<br> column = Math.floor(this.id % column_amount);<br> if (allowed) {<br> allowed = false;<br> for (var index = column + (column_amount * (row_amount - 1));<br> index ""SYMBOL""= column;<br> index -= column_amount) {<br> if (!$(""STRING"" + index).hasClass(""STRING"" + current_player_number) ""SYMBOL""""SYMBOL"" !$(""STRING"" + index).hasClass(""STRING"" + other_player_number)) {<br> $(""STRING"" + index).addClass(""STRING"" + current_player_number);<br> check_board();<br> break;<br> }<br> else if (index === column) {<br> ""COMMENT""allowed = true;<br> }<br> }<br> }<br> }<br> function start_game () {<br> if (current_player_number === null) {<br> return false;<br> }<br> $(""STRING"").unbind(""STRING"", human_and_computer_turns);<br> $(""STRING"").unbind(""STRING"", human_only_turns);<br> ""COMMENT""stop_computers = true;<br> if ($(""STRING"").val() === ""STRING"" ""SYMBOL""""SYMBOL"" $(""STRING"").val() === ""STRING"") {<br> allowed = false;<br> human_exists = false;<br> stop_computers = false;<br> computer_turn_process(1);<br> }<br> else if ($(""STRING"").val() === ""STRING"" ""SYMBOL""""SYMBOL"" $(""STRING"").val() === ""STRING"") {<br> allowed = true;<br> $(""STRING"").on(""STRING"", human_only_turns);<br> }<br> else {<br> if ($(""STRING"").val() === ""STRING"") {<br> computer_number = 2;<br> }<br> else {<br> computer_number = 1;<br> }<br> if (current_player_number === computer_number) {<br> allowed = false;<br> human_and_computer_turns(""STRING"");<br> }<br> else {<br> allowed = true;<br> }<br> $(""STRING"").on(""STRING"", human_and_computer_turns);<br> }<br> }<br> $(""STRING"").click(function () {<br> current_player_number = 1;<br> $(""STRING"").each(function () {<br> this.className = ""STRING"";<br> });<br> $(""STRING"").html(""STRING"");<br> $(""STRING"").html($(""STRING"").html());<br> $(""STRING"")[0].style.display = ""STRING"";<br> $(""STRING"")[0].style.backgroundColor = ""STRING"";<br> start_game();<br> });<br> $(""STRING"").on(""STRING"", function (event) {<br> return clean (event, ""STRING"");<br> }).on(""STRING"", function () {<br> this.value = clean_paste (this.value, ""STRING"");<br> $(""STRING"" + this.id).html(this.value.toUpperCase());<br> });<br> $(""STRING"").on(""STRING"", function () {<br> start_game();<br> });<br> $(function () {<br> start_game();<br> });'; echo preg_replace($regex,' $1 $2',$test_string);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/Mo2ev
function name:  (null)
number of ops:  9
compiled vars:  !0 = $regex, !1 = $test_string
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '%28%3F%3C%21%3Cbr%3E%29%28%3F%3C%21%5Cs%29%5Cs%2A%28%5C%28%28%3F%3A%28%3F%3A%28%3F%21%3Cbr%3E%7C%5C%28%7C%5C%29%29.%29%2A%28%3F%3A%5C%28%28%3F%3A%28%3F%21%3Cbr%3E%7C%5C%28%7C%5C%29%29.%29%2A%5C%29%29%3F%29%2A%3F%5C%29%29%5Cs%2A%28%5C%7B%29'
    3     1        ASSIGN                                                   !1, '%3Cbr%3E%09var+allowed+%3D+true%2C+human_exists+%3D+true%2C+stop_computers+%3D+false%2C+current_player_number+%3D+1%2C+row_amount+%3D+6%2C+column_amount+%3D+7%3B%3Cbr%3E%09function+check_board+%28%29+%7B%3Cbr%3E%09%09computer_number+%3D+current_player_number%3B%3Cbr%3E%09%09other_player_number+%3D+%28computer_number+%3D%3D%3D+1%29+%3F+2+%3A+1%3B%3Cbr%3E%09%09var+board+%3D+%7B%7D%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29.each%28function+%28%29+%7B%3Cbr%3E%09%09%09if+%28%24%28this%29.hasClass%28%22%22STRING%22%22+%2B+other_player_number%29%29+%7B%3Cbr%3E%09%09%09%09board%5Bthis.id%5D+%3D+1%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%09else+if+%28%24%28this%29.hasClass%28%22%22STRING%22%22+%2B+computer_number%29%29+%7B%3Cbr%3E%09%09%09%09board%5Bthis.id%5D+%3D+2%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%09else+%7B%3Cbr%3E%09%09%09%09board%5Bthis.id%5D+%3D+0%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%7D%29%3B%3Cbr%3E%09%09board+%3D+%7B%22%22STRING%22%22%3A+JSON.stringify%28board%29%2C+%22%22STRING%22%22%3A+column_amount%2C+%22%22STRING%22%22%3A+row_amount%7D%3B%3Cbr%3E%09%09%24.ajax+%28%7B%3Cbr%3E%09%09%09type%3A+%22%22STRING%22%22%2C%3Cbr%3E%09%09%09url%3A+%22%22STRING%22%22%2C%3Cbr%3E%09%09%09data%3A+board%2C%3Cbr%3E%09%09%09success%3A+function+%28data%29+%7B%3Cbr%3E%09%09%09%09input+%3D+board%3B%3Cbr%3E%09%09%09%09output+%3D+data%3B%3Cbr%3E%09%09%09%09board+%3D+JSON.parse%28data%29%3B%3Cbr%3E%09%09%09%09if+%28%21board%5B%22%22STRING%22%22%5D+%22%22SYMBOL%22%22%22%22SYMBOL%22%22+board%5B%22%22STRING%22%22%5D+%3D%3D%3D+false%29+%7B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%24%28%22%22STRING%22%22+%2B+other_player_number+%2B+%22%22STRING%22%22%29.html%28%29%29%3B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.backgroundColor+%3D+%28other_player_number+%3D%3D%3D+1%29+%3F+%22%22STRING%22%22%3A+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09current_player_number+%3D+other_player_number%3B%3Cbr%3E%09%09%09%09%09allowed+%3D+true%3B%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%09else+if+%28board%5B%22%22STRING%22%22%5D%29+%7B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.display+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09current_player_number+%3D+null%3B%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%09else+%7B%3Cbr%3E%09%09%09%09%09if+%28board%5B%22%22STRING%22%22%5D+%3D%3D%3D+1+%7C%7C+board%5B%22%22STRING%22%22%5D+%3D%3D%3D+%22%22STRING%22%22%29+%7B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%24%28%22%22STRING%22%22+%2B+other_player_number+%2B+%22%22STRING%22%22%29.html%28%29+%2B+%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.display+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22+%2B+other_player_number+%2B+%22%22STRING%22%22%29.html%28parseInt%28%24%28%22%22STRING%22%22+%2B+other_player_number+%2B+%22%22STRING%22%22%29.html%28%29%2C+10%29+%2B+1%29%3B%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09else+%7B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%24%28%22%22STRING%22%22+%2B+computer_number+%2B+%22%22STRING%22%22%29.html%28%29+%2B+%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.display+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22+%2B+computer_number+%2B+%22%22STRING%22%22%29.html%28parseInt%28%24%28%22%22STRING%22%22+%2B+computer_number+%2B+%22%22STRING%22%22%29.html%28%29%2C+10%29+%2B+1%29%3B%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09current_player_number+%3D+null%3B%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%7D%2C%3Cbr%3E%09%09%09fail%3A+function+%28one%2C+two%2C+three%29+%7B%3Cbr%3E%09%09%09%09console.log%28one%29%3B%3Cbr%3E%09%09%09%09console.log%28two%29%3B%3Cbr%3E%09%09%09%09console.log%28three%29%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%7D%29%3B%3Cbr%3E%09%7D%3Cbr%3E%09function+computer_turn_process+%28%29+%7B%3Cbr%3E%09%09allowed+%3D+false%3B%3Cbr%3E%09%09computer_number+%3D+current_player_number%3B%3Cbr%3E%09%09other_player_number+%3D+%28computer_number+%3D%3D%3D+1%29+%3F+2+%3A+1%3B%3Cbr%3E%09%09var+board+%3D+%7B%7D%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29.each%28function+%28%29+%7B%3Cbr%3E%09%09%09if+%28%24%28this%29.hasClass%28%22%22STRING%22%22+%2B+other_player_number%29%29+%7B%3Cbr%3E%09%09%09%09board%5Bthis.id%5D+%3D+1%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%09else+if+%28%24%28this%29.hasClass%28%22%22STRING%22%22+%2B+computer_number%29%29+%7B%3Cbr%3E%09%09%09%09board%5Bthis.id%5D+%3D+2%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%09else+%7B%3Cbr%3E%09%09%09%09board%5Bthis.id%5D+%3D+0%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%7D%29%3B%3Cbr%3E%09%09board+%3D+%7B%22%22STRING%22%22%3A+JSON.stringify%28board%29%2C+%22%22STRING%22%22%3A+true%2C+%22%22STRING%22%22%3A+column_amount%2C+%22%22STRING%22%22%3A+row_amount%7D%3B%3Cbr%3E%09%09%24.ajax+%28%7B%3Cbr%3E%09%09%09type%3A+%22%22STRING%22%22%2C%3Cbr%3E%09%09%09url%3A+%22%22STRING%22%22%2C%3Cbr%3E%09%09%09data%3A+board%2C%3Cbr%3E%09%09%09success%3A+function+%28data%29+%7B%3Cbr%3E%09%09%09%09input+%3D+board%3B%3Cbr%3E%09%09%09%09output+%3D+data%3B%3Cbr%3E%09%09%09%09board+%3D+JSON.parse%28data%29%3B%3Cbr%3E%09%09%09%09for+%28var+index_new+%3D+0%3B%3Cbr%3E%09%09%09%09index_new+%22%22SYMBOL%22%22+%28row_amount+%2A+column_amount%29%3B%3Cbr%3E%09%09%09%09index_new%2B%2B%29+%7B%3Cbr%3E%09%09%09%09%09if+%28board%5Bindex_new%5D+%3D%3D%3D+1%29+%7B%3Cbr%3E%09%09%09%09%09%09if+%28computer_number+%21%3D%3D+other_player_number%29+%7B%3Cbr%3E%09%09%09%09%09%09%09%24%28%22%22STRING%22%22+%2B+index_new%29.removeClass%28%22%22STRING%22%22+%2B+computer_number%29.addClass%28%22%22STRING%22%22+%2B+other_player_number%29%3B%3Cbr%3E%09%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09else+if+%28board%5Bindex_new%5D+%3D%3D%3D+2%29+%7B%3Cbr%3E%09%09%09%09%09%09if+%28computer_number+%21%3D%3D+other_player_number%29+%7B%3Cbr%3E%09%09%09%09%09%09%09%24%28%22%22STRING%22%22+%2B+index_new%29.removeClass%28%22%22STRING%22%22+%2B+other_player_number%29.addClass%28%22%22STRING%22%22+%2B+computer_number%29%3B%3Cbr%3E%09%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%09if+%28%21board%5B%22%22STRING%22%22%5D+%22%22SYMBOL%22%22%22%22SYMBOL%22%22+board%5B%22%22STRING%22%22%5D+%22%22SYMBOL%22%22%22%22SYMBOL%22%22+board%5B%22%22STRING%22%22%5D+%3D%3D%3D+false%29+%7B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%24%28%22%22STRING%22%22+%2B+other_player_number+%2B+%22%22STRING%22%22%29.html%28%29%29%3B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.backgroundColor+%3D+%28other_player_number+%3D%3D%3D+1%29+%3F+%22%22STRING%22%22%3A+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09current_player_number+%3D+other_player_number%3B%3Cbr%3E%09%09%09%09%09if+%28human_exists%29+%7B%3Cbr%3E%09%09%09%09%09%09allowed+%3D+true%3B%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09else+if+%28%21stop_computers%29+%7B%3Cbr%3E%09%09%09%09%09%09computer_turn_process+%28%29%3B%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%09else+if+%28board%5B%22%22STRING%22%22%5D%29+%7B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.display+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09current_player_number+%3D+null%3B%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%09else+%7B%3Cbr%3E%09%09%09%09%09if+%28board%5B%22%22STRING%22%22%5D+%3D%3D%3D+1+%7C%7C+board%5B%22%22STRING%22%22%5D+%3D%3D%3D+%22%22STRING%22%22%29+%7B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%24%28%22%22STRING%22%22+%2B+other_player_number+%2B+%22%22STRING%22%22%29.html%28%29+%2B+%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.display+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22+%2B+other_player_number+%2B+%22%22STRING%22%22%29.html%28parseInt%28%24%28%22%22STRING%22%22+%2B+other_player_number+%2B+%22%22STRING%22%22%29.html%28%29%2C+10%29+%2B+1%29%3B%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09else+%7B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%24%28%22%22STRING%22%22+%2B+computer_number+%2B+%22%22STRING%22%22%29.html%28%29+%2B+%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.display+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22+%2B+computer_number+%2B+%22%22STRING%22%22%29.html%28parseInt%28%24%28%22%22STRING%22%22+%2B+computer_number+%2B+%22%22STRING%22%22%29.html%28%29%2C+10%29+%2B+1%29%3B%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09current_player_number+%3D+null%3B%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%7D%2C%3Cbr%3E%09%09%09fail%3A+function+%28one%2C+two%2C+three%29+%7B%3Cbr%3E%09%09%09%09console.log%28one%29%3B%3Cbr%3E%09%09%09%09console.log%28two%29%3B%3Cbr%3E%09%09%09%09console.log%28three%29%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%7D%29%3B%3Cbr%3E%09%7D%3Cbr%3E%09%24%28%22%22STRING%22%22%29.each%28function+%28%29+%7B%3Cbr%3E%09%09this.innerHTML+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%7D%29%3B%3Cbr%3E%09function+human_and_computer_turns+%28noclick%29+%7B%3Cbr%3E%09%09human_exists+%3D+true%3B%3Cbr%3E%09%09if+%28%24%28%22%22STRING%22%22%29.val%28%29+%3D%3D%3D+%22%22STRING%22%22%29+%7B%3Cbr%3E%09%09%09computer_number+%3D+2%3B%3Cbr%3E%09%09%7D%3Cbr%3E%09%09else+%7B%3Cbr%3E%09%09%09computer_number+%3D+1%3B%3Cbr%3E%09%09%7D%3Cbr%3E%09%09other_player_number+%3D+%28computer_number+%3D%3D%3D+1%29+%3F+2+%3A+1%3B%3Cbr%3E%09%09if+%28noclick+%21%3D%3D+%22%22STRING%22%22%29+%7B%3Cbr%3E%09%09%09column+%3D+Math.floor%28this.id+%25+column_amount%29%3B%3Cbr%3E%09%09%09if+%28allowed%29+%7B%3Cbr%3E%09%09%09%09allowed+%3D+false%3B%3Cbr%3E%09%09%09%09for+%28var+index+%3D+column+%2B+%28column_amount+%2A+%28row_amount+-+1%29%29%3B%3Cbr%3E%09%09%09%09index+%22%22SYMBOL%22%22%3D+column%3B%3Cbr%3E%09%09%09%09index+-%3D+column_amount%29+%7B%3Cbr%3E%09%09%09%09%09if+%28%21%24%28%22%22STRING%22%22+%2B+index%29.hasClass%28%22%22STRING%22%22+%2B+computer_number%29+%22%22SYMBOL%22%22%22%22SYMBOL%22%22+%21%24%28%22%22STRING%22%22+%2B+index%29.hasClass%28%22%22STRING%22%22+%2B+other_player_number%29%29+%7B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22+%2B+index%29.addClass%28%22%22STRING%22%22+%2B+other_player_number%29%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29.html%28%24%28%22%22STRING%22%22+%2B+computer_number+%2B+%22%22STRING%22%22%29.html%28%29%29%3B%3Cbr%3E%09%09%09%09%09%09current_player_number+%3D+computer_number%3B%3Cbr%3E%09%09%09%09%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.backgroundColor+%3D+%28other_player_number+%3D%3D%3D+1%29+%3F+%22%22STRING%22%22+%3A+%22%22STRING%22%22%3B%3Cbr%3E%09%09%09%09%09%09computer_turn_process%28computer_number%29%3B%3Cbr%3E%09%09%09%09%09%09break%3B%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%09else+if+%28index+%3D%3D%3D+column%29+%7B%3Cbr%3E%09%09%09%09%09%09%22%22COMMENT%22%22allowed+%3D+true%3B%3Cbr%3E%09%09%09%09%09%7D%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%7D%3Cbr%3E%09%09else+%7B%3Cbr%3E%09%09%09allowed+%3D+false%3B%3Cbr%3E%09%09%09computer_turn_process%28computer_number%29%3B%3Cbr%3E%09%09%7D%3Cbr%3E%09%7D%3Cbr%3E%09function+human_only_turns+%28%29+%7B%3Cbr%3E%09%09human_exists+%3D+true%3B%3Cbr%3E%09%09other_player_number+%3D+%28current_player_number+%3D%3D%3D+1%29+%3F+2+%3A+1%3B%3Cbr%3E%09%09column+%3D+Math.floor%28this.id+%25+column_amount%29%3B%3Cbr%3E%09%09if+%28allowed%29+%7B%3Cbr%3E%09%09%09allowed+%3D+false%3B%3Cbr%3E%09%09%09for+%28var+index+%3D+column+%2B+%28column_amount+%2A+%28row_amount+-+1%29%29%3B%3Cbr%3E%09%09%09index+%22%22SYMBOL%22%22%3D+column%3B%3Cbr%3E%09%09%09index+-%3D+column_amount%29+%7B%3Cbr%3E%09%09%09%09if+%28%21%24%28%22%22STRING%22%22+%2B+index%29.hasClass%28%22%22STRING%22%22+%2B+current_player_number%29+%22%22SYMBOL%22%22%22%22SYMBOL%22%22+%21%24%28%22%22STRING%22%22+%2B+index%29.hasClass%28%22%22STRING%22%22+%2B+other_player_number%29%29+%7B%3Cbr%3E%09%09%09%09%09%24%28%22%22STRING%22%22+%2B+index%29.addClass%28%22%22STRING%22%22+%2B+current_player_number%29%3B%3Cbr%3E%09%09%09%09%09check_board%28%29%3B%3Cbr%3E%09%09%09%09%09break%3B%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%09else+if+%28index+%3D%3D%3D+column%29+%7B%3Cbr%3E%09%09%09%09%09%22%22COMMENT%22%22allowed+%3D+true%3B%3Cbr%3E%09%09%09%09%7D%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%7D%3Cbr%3E%09%7D%3Cbr%3E%09function+start_game+%28%29+%7B%3Cbr%3E%09%09if+%28current_player_number+%3D%3D%3D+null%29+%7B%3Cbr%3E%09%09%09return+false%3B%3Cbr%3E%09%09%7D%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29.unbind%28%22%22STRING%22%22%2C+human_and_computer_turns%29%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29.unbind%28%22%22STRING%22%22%2C+human_only_turns%29%3B%3Cbr%3E%09%09%22%22COMMENT%22%22stop_computers+%3D+true%3B%3Cbr%3E%09%09if+%28%24%28%22%22STRING%22%22%29.val%28%29+%3D%3D%3D+%22%22STRING%22%22+%22%22SYMBOL%22%22%22%22SYMBOL%22%22+%24%28%22%22STRING%22%22%29.val%28%29+%3D%3D%3D+%22%22STRING%22%22%29+%7B%3Cbr%3E%09%09%09allowed+%3D+false%3B%3Cbr%3E%09%09%09human_exists+%3D+false%3B%3Cbr%3E%09%09%09stop_computers+%3D+false%3B%3Cbr%3E%09%09%09computer_turn_process%281%29%3B%3Cbr%3E%09%09%7D%3Cbr%3E%09%09else+if+%28%24%28%22%22STRING%22%22%29.val%28%29+%3D%3D%3D+%22%22STRING%22%22+%22%22SYMBOL%22%22%22%22SYMBOL%22%22+%24%28%22%22STRING%22%22%29.val%28%29+%3D%3D%3D+%22%22STRING%22%22%29+%7B%3Cbr%3E%09%09%09allowed+%3D+true%3B%3Cbr%3E%09%09%09%24%28%22%22STRING%22%22%29.on%28%22%22STRING%22%22%2C+human_only_turns%29%3B%3Cbr%3E%09%09%7D%3Cbr%3E%09%09else+%7B%3Cbr%3E%09%09%09if+%28%24%28%22%22STRING%22%22%29.val%28%29+%3D%3D%3D+%22%22STRING%22%22%29+%7B%3Cbr%3E%09%09%09%09computer_number+%3D+2%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%09else+%7B%3Cbr%3E%09%09%09%09computer_number+%3D+1%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%09if+%28current_player_number+%3D%3D%3D+computer_number%29+%7B%3Cbr%3E%09%09%09%09allowed+%3D+false%3B%3Cbr%3E%09%09%09%09human_and_computer_turns%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%09else+%7B%3Cbr%3E%09%09%09%09allowed+%3D+true%3B%3Cbr%3E%09%09%09%7D%3Cbr%3E%09%09%09%24%28%22%22STRING%22%22%29.on%28%22%22STRING%22%22%2C+human_and_computer_turns%29%3B%3Cbr%3E%09%09%7D%3Cbr%3E%09%7D%3Cbr%3E%09%24%28%22%22STRING%22%22%29.click%28function+%28%29+%7B%3Cbr%3E%09%09current_player_number+%3D+1%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29.each%28function+%28%29+%7B%3Cbr%3E%09%09%09this.className+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09%7D%29%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29.html%28%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29.html%28%24%28%22%22STRING%22%22%29.html%28%29%29%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.display+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22%29%5B0%5D.style.backgroundColor+%3D+%22%22STRING%22%22%3B%3Cbr%3E%09%09start_game%28%29%3B%3Cbr%3E%09%7D%29%3B%3Cbr%3E%09%24%28%22%22STRING%22%22%29.on%28%22%22STRING%22%22%2C+function+%28event%29+%7B%3Cbr%3E%09%09return+clean+%28event%2C+%22%22STRING%22%22%29%3B%3Cbr%3E%09%7D%29.on%28%22%22STRING%22%22%2C+function+%28%29+%7B%3Cbr%3E%09%09this.value+%3D+clean_paste+%28this.value%2C+%22%22STRING%22%22%29%3B%3Cbr%3E%09%09%24%28%22%22STRING%22%22+%2B+this.id%29.html%28this.value.toUpperCase%28%29%29%3B%3Cbr%3E%09%7D%29%3B%3Cbr%3E%09%24%28%22%22STRING%22%22%29.on%28%22%22STRING%22%22%2C+function+%28%29+%7B%3Cbr%3E%09%09start_game%28%29%3B%3Cbr%3E%09%7D%29%3B%3Cbr%3E%09%24%28function+%28%29+%7B%3Cbr%3E%09%09start_game%28%29%3B%3Cbr%3E%09%7D%29%3B'
    4     2        INIT_FCALL                                               'preg_replace'
          3        SEND_VAR                                                 !0
          4        SEND_VAL                                                 '+%241+%242'
          5        SEND_VAR                                                 !1
          6        DO_ICALL                                         $4      
          7        ECHO                                                     $4
          8      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
170.56 ms | 1412 KiB | 15 Q