本文整理匯總了PHP中Stock::persist方法的典型用法代碼示例。如果您正苦於以下問題:PHP Stock::persist方法的具體用法?PHP Stock::persist怎麽用?PHP Stock::persist使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Stock
的用法示例。
在下文中一共展示了Stock::persist方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: update_stocks
/**
* Use this method to update our master list of stocks. The file supplied should
* have one stock name per separator.
* @param String $filename The filename including location
* @param String $separator The separator used between each stock.
* @return void Return nothing.
**/
function update_stocks($filename, $separator)
{
$file = file_get_contents($filename);
$sArray = explode($separator, $file);
//Lets first populate an array with all stocks from DB so we don't
//have to make a DB call for each stock in file.
$query = mysql_query("SELECT * FROM stocks");
$current_stocks = array();
while ($array = mysql_fetch_array($query)) {
$current_stocks[$array['name']] = true;
}
//Now lets cycle through ones to add
foreach ($sArray as $i => $value) {
if (array_key_exists($value, $current_stocks) == false && $value != "") {
echo "Adding " . $value . " <br />";
$stock = new Stock(null);
$stock->setName($value);
$stock->persist();
} else {
echo "Skipped " . $value . "<br />";
}
}
}
示例2: deactivateStock
/**
* Will only deactivate if latest trade was 0 and last 5 days was also 0.
*/
function deactivateStock($stock_id)
{
$stock = new Stock($stock_id, false);
//Make sure stock exists.
if ($stock->getId() < 0) {
return "";
}
//Don't do anything if already inactive
if ($stock->getStatus() == STATUS_INACTIVE) {
return $stock->getTicker() . "(" . $stock->getId() . ") was already inactive.";
}
if (update_stock_info($stock->getTicker())) {
//Only need to get new data if was updated.
$stock = new Stock($stock_id, false);
}
if ($stock->getLastTrade() > 0.05) {
return "";
}
update_stock_daily($stock->getTicker());
$stock = new Stock($stock_id, true);
$arr = $stock->getDailyData();
if (sizeof($arr) < 5) {
//If in here, we don't have enough data which means stock is probably a weird derivative.
$stock->setStatus(STATUS_INACTIVE);
$stock->persist();
return "Removed Stock " . $stock->getTicker() . " (" . $stock->getId() . ") due to not enough daily data.";
}
//Make sure has been less than 0.05 for quite some time.
if ($arr[0]->getClose() < 0.05 && $arr[1]->getClose() < 0.05 && $arr[2]->getClose() < 0.05 && $arr[3]->getClose() < 0.05) {
$stock->setStatus(STATUS_INACTIVE);
$stock->persist();
return "Removed Stock " . $stock->getTicker() . " (" . $stock->getId() . ") due to a last closing price of \$" . $stock->getLastTrade();
}
return "";
}