Есть ли таблица того, сколько "работы" требуется для выполнения данной функции в PHP? Я не специалист по компьютерным технологиям, поэтому у меня, возможно, нет формального фона, чтобы знать, что «о да, строки работают с дольше, чем целые числа» или что-то в этом роде. Все ли шаги / строки в программе созданы равными? Я просто не знаю, с чего начать.
В настоящее время я задаю несколько вопросов по Project Euler, в которых я уверен, что мой ответ сработает, но я по минутам синхронизирую свой локальный сервер Apache с моими запросами (и PE сказал, что все проблемы могут быть решены) <1 минута) Я не знаю, как / с чего начать оптимизацию, поэтому было бы полезно узнать больше о PHP и о том, как он использует память. Для чего это стоит, вот мой код для <a href="http://projecteuler.net/index.php?section=problems&id=206" rel="nofollow noreferrer"> вопрос 206 :
<?php
$start = time();
for ($i=1010374999; $i < 1421374999; $i++) {
$a = number_format(pow($i,2),0,".","");
$c = preg_split('//', $a, -1, PREG_SPLIT_NO_EMPTY);
if ($c[0]==1) {
if ($c[2]==2) {
if ($c[4]==3) {
if ($c[6]==4) {
if ($c[8]==5) {
if ($c[10]==6) {
if ($c[12]==7) {
if ($c[14]==8) {
if ($c[16]==9) {
if ($c[18]==0) {
echo $i;
}
}
}
}
}
}
}
}
}
}
}
$end = time();
$elapsed = ($end-$start);
echo "<br />The time to calculate was $elapsed seconds";
?>
Если это вики-вопрос об оптимизации, просто дайте мне знать, и я перенесу его. Опять же, не ища ответа, просто помогите узнать, как эффективно использовать мой код (хотя поверхностные подсказки не будут отвергнуты, и я понимаю, что, возможно, существуют более изящные математические способы решения проблемы)