Mam duży array
symboli giełdowych, ponieważ jestem za projektem pisania internetowej symulacji giełdowej. Jedną z moich funkcji pomocniczych jest określanie, czy wprowadzony towar jest ważny, sprawdzając tablicę dla symbolu. Aby to zrobić, używam array_search()
. Problem, który mam, polega na sprawdzaniu przypadków krawędzi. Wygląda na to, że wyszukiwanie nie podnosi elementu zerowego, mimo że podnosi on zupełnie inne elementy. Oto część tablicy:array_search() nie znajduje 0 elementu
[0] => AAC
[1] => AACC
[2] => AACOU
[3] => AACOW
[4] => AAIT
[5] => AAME
[6] => AAON
[7] => AAPL
[8] => AAWW
[9] => AAXJ
[10] => ABAX
[11] => ABCB
[12] => ABCD
[13] => ABCO
[14] => ABFS
[15] => ABIO
[16] => ABMD
[17] => ABTL
[18] => ABVA
[19] => ACAD
[20] => ACAS
[21] => ACAT
[22] => ACCL
Itp, itd Jak wcześniej powiedziałem, to działa dobrze dla innych elementów, po prostu nie 0-ga jeden. Zwraca FALSE
podczas wyszukiwania AAC.
Oto kod PHP, którego używam.
<?php
if(isset($_GET[stock])) {
$ticker = $_GET[stock];
$ticker = trim($ticker);
print("<pre>Ticker is $ticker</pre>");
print("Validity: " . Stock::isValidStock($ticker));
print('<pre>');
$stock = Stock::getStockList();
print_r($stock);
print((bool)array_search('AAC', $stock));
print('</pre></br>');
}
?>
Here is the test web page I'm using. można zmienić poprzez edycję akcji ciąg zapytania w adresie URL. Tak jak powiedziałem, ?stock=AAC
zwraca wartość false, a wartość taka jak ?stock=GOOG
jest prawdziwa. Dzięki za pomoc!
Ahhh! Widzę, co zrobiłem. Całkowicie zapomniałem, że zwraca indeks, w przeciwieństwie do funkcji isFound(). Dziękuję bardzo! – Saxophlutist