我是PHP编码的新手,但熟悉这种机制。我需要一个插件来从ASX(澳大利亚证券交易所)提取短代码中指定的任何公司代码的报价。
我已经完成了代码并在Wordpress上加载了插件,而不是显示公司符号的价格,它将输出显示为“$ Array”,而不是值。
请看一下:
这是我的代码:
add_shortcode( 'asx-prices', 'asx_prices_shortcode' );
function asx_prices_shortcode( $atts ) {
extract( shortcode_atts( array(
'symbol' => '',
), $atts ) );
// Obtain Quote Info
$data = file_get_contents( 'http://www.asx.com.au/asx/markets/priceLookup.do?by=asxCodes&asxCodes='. "{$symbol}" );
preg_match('/<td class="last">(.*)<\/td>/i', $data, $quote);
$output .= '<div class="asx_prices_symbol">Symbol: '. "{$symbol}" .'</div>';
$output .= '<div class="asx_prices_quote">Latest Price: $'. $quote .'</div>';
return $output;
}
这是输出:
Symbol: QVE
Latest Price: $Array
Symbol: QVEO
Latest Price: $Array
这是预期的结果:
Symbol: QVE
Latest Price: 0.985
Symbol: QVEO
Latest Price: 0.038
这是我关于Stack Overflow的第一篇文章,我想参与更多的PHP,这就是我今天开始的原因,我将来需要更多的专家帮助。 谢谢你的时间。
答案 0 :(得分:0)
preg_match
将结果放在$quote
变量中,创建一个数组
您会在$quote[1]
内找到自己的价值。
答案 1 :(得分:0)
preg_match
返回一个数组。机会$quote[0]
将返回价格。
尝试print_r($quote);
,看看你想要的结果是否在数组中,以及它所在的位置。