Проблемы с использованием переменной в качестве ключа массива в скрипте html5 - PullRequest
0 голосов
/ 15 сентября 2018

В настоящее время я пытаюсь начать использовать php для некоторых процедурных поколений и хотел отобразить свои функции в виде гистограммы:

<?php 
$seed = 58521672597513854781922;
global $randomArray;

for ($i=-1000; $i<1001; $i++) {
    $temp = $seed/($i+0.1)^0.5;
    $tempRes = $temp.'';
    $randomArray[$i] =  $tempRes[5];   
}
?>

<div>
  <canvas id="c3" width="600" height = "200" style="border:solid 1px #000000;"></canvas>
  <div>
    <button onclick="Vertical_line();return true;">draw array</button>
  </div> 
</div>

<script>
   var c3 = document.getElementById("c3");
   var c3_context = c3.getContext("2d");

       function Vertical_line() {
         <?php
            for($j=0;$j<sizeof($randomArray);$j++){
            $height = 100 - 10*$randomArray[$j];
         ?>
         c3_context.moveTo(<?php echo 300+$j;?>, 200);
         c3_context.lineTo(<?php echo 300+$j;?>, <?php echo $height;?>);
         c3_context.strokeStyle = "red";
         c3_context.stroke();
        <?php }?>
       }
</script>

Я не понимаю, почему переменная $ j в качестве ключевой ссылки в моем массиве не работает. Если я заменяю его числами вручную, чтобы нарисовать одну запись в моем массиве, это работает без проблем, если я устанавливаю переменную в качестве абсолютного числа и использую ее в качестве ключа, она тоже работает, только когда я использую переменную, которая меняет свое значение, она не будет отображаться что-нибудь.

Помощь приветствуется:)

Ответы [ 2 ]

0 голосов
/ 15 сентября 2018

Вы не можете запустить Php внутри javascript, Php всегда запускается, как только страница загружается, вы хотите создать функцию JS для выполнения желаемой вами работы

0 голосов
/ 15 сентября 2018

Хорошо, спасибо за помощь, обнаружил ошибку, была проблема с отрицательным ключом для моего массива, простой контроль :), спасибо @ u_mulder за напоминание о необходимости взглянуть на исходный код, мне пришлось прокручивать довольно долгочтобы увидеть ошибку ^^

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...