public static function getOneByQuery($query, array $params) { $ws = Widget::getManyByQuery($query, $params); if (count($ws) == 0) { throw new NoSuchWidget("Could not find widget matching query '{$query}' with following " . "parameters: " . asString($params)); } return $ws[0]; }
public static function loadFromQuery($query, $params) { $rows = DB\simpleSelect('users', $query, $params); if (count($rows) == 0) { throw new NoSuchUser("Could not find user for query '{$query}' and parameters " . asString($params)); } $user = new User(); $user->populateFromRow(current($rows)); return $user; }
/** @deprecated All graphite objects should implement __toString() */ public function forceString(&$uri) { $uri = asString($uri); return $uri; }
/** * This is just a temporary measure to keep an eye on registrations (make sure we're not * getting spammed) until we have a more robust, scalable mechanism for blocking spam * and keeping a general eye on things. */ private function userCreatedNotification(User $user) { sendTextEmail('*****@*****.**', '*****@*****.**', 'New BitcoinChipin.com Account Created', "A new user has been created...\n\n" . asString($user)); }
public function getResponseTypesAsString() { return Util . asString(responseTypes); }
})->subscribe($stdoutObserver()); println('Example 2 - Curl defer with flatMap using stock symbol FB'); Observable::just('FB')->flatMap(function ($symbol) { return Observable::defer(function () use($symbol) { $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_URL, "http://finance.yahoo.com/webservice/v1/symbols/{$symbol}/usd/quote?format=json"); $result = curl_exec($ch); curl_close($ch); return Observable::just($result); }); })->map('json_decode')->flatMap(function ($result) { return Observable::fromArray($result->list->resources); })->subscribe(new Observer\CallbackObserver(function ($value) { echo "Next value: " . asString($value->resource->fields->name) . "\n"; })); /* ->combineLatest([$source2], function ($value1, $value2) { return "First: {$value1}, Second: {$value2}"; }) */ println('Buy 10 shares of FB from Luis CHECKING account'); function findSavingsAccountObs($userId) { return Observable::just($userId)->skipWhile(function ($input) { return empty($input); })->map(function ($userId) { return User::find($userId); })->flatMap(function (User $user) { return Observable::fromArray(Account::query('user_id', $user->getId()));
<?php function println($str) { print "\n{$str}\n"; } function asString($value) { if (is_array($value)) { return json_encode($value); } return print_r($value, true); } $stdoutObserver = function ($prefix = '') { return new Rx\Observer\CallbackObserver(function ($value) use($prefix) { echo $prefix . "Next value: " . asString($value) . "\n"; }, function ($error) use($prefix) { echo $prefix . "Exception: " . $error->getMessage() . "\n"; }, function () use($prefix) { echo $prefix . "Complete!\n"; }); };
use Rxnet\Httpd\HttpdResponse; use Rxnet\Subject\EndlessSubject; use Rxnet\Thread\RxThread; use Rxnet\Zmq\RxZmq; use Rxnet\Zmq\SocketWrapper; require __DIR__ . "/../vendor/autoload.php"; function asString($value) { if (is_array($value)) { return json_encode($value); } return (string) $value; } $createStdoutObserver = function ($prefix = '') { return new Rx\Observer\CallbackObserver(function ($value) use($prefix) { echo $prefix . "Next value: " . asString($value) . " : " . memory_get_usage(true) . "\n"; }, function ($error) use($prefix) { echo $prefix . "Exception: " . $error->getMessage() . "\n"; }, function () use($prefix) { echo $prefix . "Complete!\n"; }); }; $loop = Factory::create(); $scheduler = new EventLoopScheduler($loop); $i = 0; $mem = function () use(&$i) { echo memory_get_usage(true) . "\n"; }; $scheduler->schedulePeriodic($mem, 10 * 1000, 10 * 1000); $scheduler->schedulePeriodic(function () use(&$i) { $i++;