本文整理汇总了PHP中Type::int方法的典型用法代码示例。如果您正苦于以下问题:PHP Type::int方法的具体用法?PHP Type::int怎么用?PHP Type::int使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Type
的用法示例。
在下文中一共展示了Type::int方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: int
/**
* @param array $values
* @param string $key
* @param int $default
* @return int
*/
public static function int(array $values, $key, $default = 0)
{
if (isset($values[$key])) {
return Type::int($values[$key]);
}
return $default;
}
示例2: compositeCassandraTypes
/**
* Composite Cassandra types (list, map, set, tuple, and UDT) to be used by
* data providers
*/
public function compositeCassandraTypes()
{
$collectionType = Type::collection(Type::varchar());
$setType = Type::set(Type::varchar());
$mapType = Type::map(Type::varchar(), Type::int());
$tupleType = Type::tuple(Type::varchar(), Type::int(), Type::bigint());
$userType = Type::userType("a", Type::varchar(), "b", Type::int(), "c", Type::bigint());
$userType = $userType->withName(self::userTypeString($userType));
return array(array($collectionType, array($collectionType->create("a", "b", "c"), $collectionType->create("d", "e", "f"), $collectionType->create("x", "y", "z"))), array($setType, array($setType->create("a", "b", "c"), $setType->create("d", "e", "f"), $setType->create("x", "y", "z"))), array($mapType, array($mapType->create("a", 1, "b", 2, "c", 3), $mapType->create("d", 4, "e", 5, "f", 6), $mapType->create("x", 7, "y", 8, "z", 9))), array($tupleType, array($tupleType->create("a", 1, new Bigint(2)), $tupleType->create("b", 3, new Bigint(4)), $tupleType->create("c", 5, new Bigint(6)))), array($userType, array($userType->create("a", "x", "b", 1, "c", new Bigint(2)), $userType->create("a", "y", "b", 3, "c", new Bigint(4)), $userType->create("a", "z", "b", 5, "c", new Bigint(6)))));
}
示例3: testInt
/**
* Int tests
*/
public function testInt()
{
$this->assertSame(1, Type::int(1));
$this->assertSame(1, Type::int(1.2));
$this->assertSame(0, Type::int(0.2));
$this->assertSame(1, Type::int('1'));
$this->assertSame(0, Type::int('test1'));
$this->assertSame(1, Type::int('1test2'));
$this->assertSame(0, Type::int([]));
$this->assertSame(1, Type::int(['test']));
$this->assertTrue(Type::isInt(1));
$this->assertFalse(Type::isInt('1'));
$this->assertFalse(Type::isInt(1.2));
$this->assertFalse(Type::isInt([]));
}
示例4: notEqualTypes
public function notEqualTypes()
{
$setType = Type::set(Type::int());
return array(array(Type::collection(Type::int())->create(), Type::collection(Type::varchar())->create()), array(Type::collection(Type::int())->create(1, 2, 3), Type::collection(Type::int())->create(4, 5, 6)), array(Type::collection(Type::int())->create(1, 2, 3), Type::collection(Type::int())->create(1)), array(Type::collection(Type::varchar())->create('a', 'b', 'c'), Type::collection(Type::varchar())->create('a', 'b', 'd')), array(Type::collection($setType)->create($setType->create(1, 2, 3)), Type::collection($setType)->create($setType->create(4, 5, 6))));
}
示例5: testEmpty
/**
* Bind statement with an null map
*/
public function testEmpty()
{
$mapType = Type::map(Type::int(), Type::int());
$this->createTableInsertAndVerifyValueByIndex($mapType, null);
$this->createTableInsertAndVerifyValueByName($mapType, null);
}
示例6: testPartial
/**
* Partial user type
*
* This test will ensure that partial user types return the correct value.
*
* @test
* @ticket PHP-58
*/
public function testPartial()
{
$userType = Type::userType("a", Type::int(), "b", Type::varchar(), "c", Type::bigint());
$userType = $userType->withName(self::userTypeString($userType));
$this->createUserType($userType);
$user = $userType->create();
$user->set("a", 99);
$this->createTableInsertAndVerifyValueByIndex($userType, $user);
$user = $userType->create();
$user->set("b", "abc");
$this->createTableInsertAndVerifyValueByIndex($userType, $user);
$user = $userType->create();
$user->set("c", new Bigint("999999999999"));
$this->createTableInsertAndVerifyValueByIndex($userType, $user);
}
示例7: testInvalidType
/**
* Invalid datatypes for tuples.
*
* This test will ensure that an exception will occur when an invalid
* datatype is used inside a tuple; issues from the server.
*
* @test
* @ticket PHP-58
* @expectedException \Cassandra\Exception\InvalidQueryException
*/
public function testInvalidType()
{
$validType = Type::tuple(Type::int());
$invalidType = Type::tuple(Type::varchar());
$tableName = $this->createTable($validType);
$options = new ExecutionOptions(array('arguments' => array("key", $invalidType->create("value"))));
$this->insertValue($tableName, $options);
}
示例8: assertUserDefinedAggregate
/**
* Assert the `user_defined_aggregate` aggregate
*/
protected function assertUserDefinedAggregate()
{
// Get the UDA from the current keyspace
$keyspace = $this->session->schema()->keyspace($this->keyspaceName);
$function = $keyspace->aggregate("user_defined_aggregate", Type::int());
$expectedArgumentTypes = array("int");
// Assert the UDA
$this->assertEquals("user_defined_aggregate", $function->simpleName());
$argumentTypes = array();
foreach ($function->argumentTypes() as $argumentType) {
$argumentTypes[] = "{$argumentType}";
}
$this->assertEquals($expectedArgumentTypes, $argumentTypes);
$this->assertUserDefinedFunctionsEqual("user_defined_function", $function->stateFunction());
$this->assertUserDefinedFunctionsEqual("uda_udf_final", $function->finalFunction());
$this->assertEquals(0, $function->initialCondition());
$this->assertEquals("int", $function->stateType());
$this->assertEquals("int", $function->returnType());
$this->assertEquals("user_defined_aggregate(int)", $function->signature());
// Assert the UDFs
$this->assertUserDefinedFunction();
$this->assertAggregateUserDefinedFunction();
}
示例9: testNoPagingMemoryLeak
/**
* Paging advancement does not create memory leak
*
* This test will ensure that the driver does not create memory leaks
* associated advancing to the next page of results.
*
* @test
* @ticket PHP-101
*/
public function testNoPagingMemoryLeak()
{
// Create the user types and table for the test
$this->session->execute(new SimpleStatement("DROP TABLE {$this->tableNamePrefix}"));
$this->session->execute(new SimpleStatement("CREATE TYPE price_history (time timestamp, price float)"));
$priceHistory = Type::userType("time", Type::timestamp(), "price", Type::float());
$this->session->execute(new SimpleStatement("CREATE TYPE purchase_stats (day_of_week int, total_purchases int)"));
$purchaseStats = Type::userType("day_of_week", Type::int(), "total_purchases", Type::int());
$this->session->execute(new SimpleStatement("CREATE TABLE {$this->tableNamePrefix} (id uuid PRIMARY KEY,\n history frozen<price_history>, stats frozen<purchase_stats>,\n comments text)"));
// Populate the table with some random data
$totalInserts = 500;
$statement = $this->session->prepare("INSERT INTO {$this->tableNamePrefix}\n (id, history, stats, comments) VALUES (?, ?, ?, ?)");
foreach (range(1, $totalInserts) as $i) {
// Create the values for the insert
$history = $priceHistory->create("time", new Timestamp(mt_rand(1270094400000, 1459483200000)), "price", new Float(mt_rand(1, 1000) / 100));
$stats = $purchaseStats->create("day_of_week", mt_rand(0, 6), "total_purchases", mt_rand(0, 1000));
$values = array(new Uuid(), $history, $stats, $this->randomString());
$options = new ExecutionOptions(array("arguments" => $values));
$this->session->execute($statement, $options);
}
// Select all the rows in the table using paging
$statement = new SimpleStatement("SELECT * FROM {$this->tableNamePrefix}");
$options = new ExecutionOptions(array("page_size" => 2));
$rows = $this->session->execute($statement, $options);
// Validate paging and ensure all the rows were read
$count = $this->validatePageResults($rows);
$this->assertEquals($totalInserts, $count);
}
示例10: testNull
/**
* Bind statment with an null set
*/
public function testNull()
{
$setType = Type::set(Type::int());
$this->createTableInsertAndVerifyValueByIndex($setType, null);
$this->createTableInsertAndVerifyValueByName($setType, null);
}
示例11: notEqualTypes
public function notEqualTypes()
{
$setType = Type::set(Type::int());
return array(array(Type::userType('a', Type::int(), 'b', Type::varchar(), 'c', Type::varint())->create(), Type::userType('a', Type::int(), 'b', Type::varchar(), 'c', Type::bigint())->create()), array(Type::userType('a', Type::int(), 'b', Type::varchar(), 'c', Type::bigint())->create(), Type::userType('x', Type::int(), 'y', Type::varchar(), 'z', Type::bigint())->create()), array(Type::userType('a', Type::int(), 'b', Type::varchar(), 'c', Type::bigint())->create('a', 1, 'b', 'x', 'c', new Bigint(99)), Type::userType('a', Type::int(), 'b', Type::varchar(), 'c', Type::bigint())->create('a', 2, 'b', 'y', 'c', new Bigint(999))), array(Type::userType('a', $setType, 'b', Type::varchar())->create('a', $setType->create(1, 2, 3), 'b', 'x'), Type::userType('a', $setType, 'b', Type::varchar())->create('a', $setType->create(4, 5, 6), 'b', 'x')));
}
示例12: notEqualTypes
public function notEqualTypes()
{
$setType = Type::set(Type::int());
return array(array(Type::tuple(Type::int(), Type::varchar(), Type::varint())->create(), Type::tuple(Type::int(), Type::varchar(), Type::bigint())->create()), array(Type::tuple(Type::int(), Type::varchar(), Type::bigint())->create(1, 'a', new Bigint(99)), Type::tuple(Type::int(), Type::varchar(), Type::bigint())->create(2, 'b', new Bigint(99))), array(Type::tuple($setType, Type::varchar())->create($setType->create(1, 2, 3), 'a'), Type::tuple($setType, Type::varchar())->create($setType->create(4, 5, 6), 'a')));
}