【发布时间】:2012-10-03 23:01:24
【问题描述】:
我有大量 array 的股票代码,因为我正在编写一个股票市场模拟 web 应用程序的项目。我的辅助函数之一是通过检查符号数组来确定输入的股票是否有效。为此,我使用array_search()。
我遇到的问题是检查边缘情况。似乎搜索没有找到第 0 个元素,即使它完全可以找到其他元素。
这是数组的一部分:
[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
等等等等。
如前所述,它适用于其他元素,但不是第 0 个元素。搜索 AAC 时返回FALSE。
这是我正在使用的 PHP 代码。
<?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.
您可以通过编辑 url 中的查询字符串来更改股票。
正如我所说,?stock=AAC 返回 false,而 ?stock=GOOG 之类的返回 true。
感谢您的帮助!
【问题讨论】: