|  |  | @ -131,6 +131,28 @@ class Schema extends \yii\db\Schema | 
			
		
	
		
		
			
				
					
					|  |  |  | 	} |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 	/** |  |  |  | 	/** | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	 * Determines the PDO type for the given PHP data value. | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	 * @param mixed $data the data whose PDO type is to be determined | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	 * @return integer the PDO type | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	 * @see http://www.php.net/manual/en/pdo.constants.php | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	 */ | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	public function getPdoType($data) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	{ | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		// php type => PDO type | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		static $typeMap = [ | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			// https://github.com/yiisoft/yii2/issues/1115 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			// Cast boolean to integer values to work around problems with PDO casting false to string '' https://bugs.php.net/bug.php?id=33876 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			'boolean' => \PDO::PARAM_INT, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			'integer' => \PDO::PARAM_INT, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			'string' => \PDO::PARAM_STR, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			'resource' => \PDO::PARAM_LOB, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 			'NULL' => \PDO::PARAM_NULL, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		]; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		$type = gettype($data); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 		return isset($typeMap[$type]) ? $typeMap[$type] : \PDO::PARAM_STR; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	} | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 	/** | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * Returns all table names in the database. |  |  |  | 	 * Returns all table names in the database. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * @param string $schema the schema of the tables. Defaults to empty string, meaning the current or default schema. |  |  |  | 	 * @param string $schema the schema of the tables. Defaults to empty string, meaning the current or default schema. | 
			
		
	
		
		
			
				
					
					|  |  |  | 	 * If not empty, the returned table names will be prefixed with the schema name. |  |  |  | 	 * If not empty, the returned table names will be prefixed with the schema name. | 
			
		
	
	
		
		
			
				
					|  |  | 
 |