--TEST-- Populate a test table with many fields and fetch them back using wrong data types --FILE-- £/aa~bîßOð|>@_U**ÄÃÖvb/.£b¢,ßÖvððCßövzO£©AOããA/uu|aª+>:_a/£¢|.ÄßZýª@UzßBra/~röðU@Äîv:/a¢ÖööãÃ~bv*,_ä:ðüîÖî.+bä*b@.Cä>:+åüüÖz,ü/£öoUß.bߪÖuªª¢OUz£bîA_aväOr:+ubå@*|üãªobauhhv£:_zßU>УCbý~£ß:ÜU:Z*Bvbu.Ð<ýîß.åauÐÃh|ýªhäu<üUü+¢uüÃãð'), (''), ('_aÖÐz©C~.bÜ£Ä<ÄOuAªUoÖC+©ãÐAbÄ_uAo:~,hîßã©~väªvuhÐZhããußî.b>öB@Ä|_ª_aCßBCß.>Oã@b~@å*..,rð©Ãýb/äÖoåÐzýÐrAöraA/Ö¢bîað:uoZhh.¢*/ßAÄö©zZCObãZã.r,+ÜOb£Bb@.@a~~oªCäªhozbÜ/zðÄöbh,ÜBÜߣ/ZßÄýO|hzÐ|a<Ä:uvAbvýÖÖÄ.B:vhU>ß,ÄvÄUah¢ärb@Bª*+£,ßÄUZob_©£ðÖªbChãÖ_/£¢ãCý|*uözå+zA¢öaä¢:äBß/uß|bu£Örð++/OÖ©r/,A>ååv/Ä,ß*ð'), (N'ТCå/vhäÐ*CböOü+ÃÖ£@ÖßýðåruörzbÖ@£uÐCåb__å¢~öüªî:|îê£Üð£OarAO£.U+|züUUßÃBýåO.ýîª*>£/.hääzbðåã>*urz~.ZößrzOÃ.a>büãb_ÜãßOoz>oßZãz£©AÐ*ßãhªr~oö~öoßÃuãÐohZBZAvCãað>å'), (N''), (N'Öoaðð~v©Uª+z,Cbý~<@ТAÜ~AÜr©©b@OOaðbãßU~a/b:îß:åä@Z~UUhÄ,/îo,¢ýObOh,OýhÜrðÐOý*ÃuzzßoÖðööåuÃ/îBr.:ä+УbÃä+_,z@öÐbÖ©äbßß/our@üZÐäBÐzÖCüüªu¢ößu|¢/ð@£ÃUUhª¢:r>:~Ð~£Ãvªrrªbßb¢:äarª¢ß~<£A¢ä~ÐCÃÖ_>ߢößö.ßýÜ/CÖ£BðBýuåÖðüö.ÃZ¢ªß@,ÃZüubbåbüuüîu*ðü,©ã~Ü¢Ü~ãÃ_B£ßuovA/:ÃåäbBhî_öbÐbÜzUðýö¢b_.,._Ü/oaߣOî>Z>ßß<¢ÐU¢ßö<*z|ZO*/,ðv><_zÐÐ_h/_oZAÖCr<ý*vܪ:b:C¢Ä¢zÜ@|aý*vhîýÐ>+/ZbZßoýä/b£@îA<åªCß@BÖ£ÐaÜßð*b+_vuaÖ,ãã_£:+<ð>BzßUZåîýUãzvA,b_+ÄBU©aÄ>ÜvZä©.Oß@©>hbÜ>£Zü*Bb|ßoªðýÖßU/ZbÜ_ª¢Cªv<@Ö+îî:~u<üÄ©¢/u>hUÐ./aUUObzUåao+b£|ß:vÃåååA@@BÄãh**:ß*ªüä/Aå~výå©ö||ªüöß_Z>OªbZ*|ãzbrî@,A><åbªZ¢åhã||oUO.|î@ã/+ßhÄzÐöîÃÜ:o_B>bÐöýåZub+:,:äÖ/Z¢ÖÄOäbhÐ+£îz,~@vr+ýCoýb¢ßhÄß|©_>Ä>z©Ã+*OorÜß,©a£Aªü<¢baý*:OÖ|uaA|öåO/ã,>Oª£ýOöÄý£~*>¢zåÐîbÖä,z©b,ߢr.:~CðöOðÖ+öbýÄ>O_©<_ýUä:b_Cåö|ª.*>ªrau|ÃC'), (null), (null), (0x67BA39352C997C2AD4F838AEB77E41F5F8BA5AE8ADC431BCC669BF7EDD2F017479C06C748AA6C6A278C4B7CCD7BD1C4B4EA8DF38F474E3A3897D6FC3DAFD4CA5F6C434F611CD6B52F4B770E90D64E4084D732F344FC87F04DCC9EA0C3702C87A7712D5138925398139D2DB82F326EEBFC5765BADC4C132E20F0845790C3CDF7DEC3E622658BBD317EB36FC496D8C242842352DE23C82E7260B537E35E28EF1CA11), (0x553BE86540AB8F786FDB0D8DE0F03AD4815EADB43A8BB79F3D89833474C163DCEF9B97816045BE2F68AED271618FAD41241C48B32E1832C9834828B6275B04AD78319D4559B8743CA07E4C8CB9463EADDC420F5778AFADD769CDFE171D07070CA924F830F168E86CA80C13AFCCA5103C0A7ADAE54CAD35C883C6DB8CB95D1E99773FE3954E0EBB7359A2AE6B9CFE0AC3BDC20CA22C21C0FBEF2FAC2B8C54741E0B50278DD4A39902E64E2AC56B387E3339122E48D2DA220C1CB08AC8A3448735080B783A4BDDDAEA95264166B58390411F3C069F25F8CD324459A7C8E2659E5398405C2CDD3E6B20808A97728162F7A8A0135CE213A4F4F79654F05082639571E9EECD74276464E0D0E61E9B605AB1E161FF28CF08BC40F34C6496894E1B9E1DF42589939483803CAF7B112D8658973BA30FEF823BC6692DADDA28C3CDDC38FA724EDED033A5A72C0A71DD102D3A0BA7CE45234A4A100A421561FE5E9F250361C993375AD53C7461A0BFBBC9BB91A1362AB0D), (0x8FEB052348CCAD1A7589CD56E7B469A02B0D291C0C1999A64408673B0C823DE597608DAD2E526486192BA5812D65B405B073369EE39BC875525EDF3F64710DF24BE8BF8627BB72D9A8A202E0741779DE54628B994C9F01FC97175BCF722522A81DB23644A62DDEF4015DF64098E7013AE501EA02E674A6ACE7C2EF0F5FA26683805AC3C1E1343727849698EEA8C063AF1620E9713A1FC1A90C895DE43DCE955EF773C03D243F59B0C9C37E50DCB703265E3FF83FB8F449609819B557D752E9B50139F63500268BD7C738A776A171CC54853685FED655A503295FA40A8902D976D9C94FA2C0CD2638B420777F4CD2BF274D60D1A1CDEBDEAB93F30CA181804DC45F309DD8222993B5AE683E06857AF8408DC03C385662F1936F3FE433DF61E75E76F5363B734B98B4A7B8D584617DC757FFBF7F38BDF99E23E80070DE8C85364D80DF908F43BCCD412887909D8C6D32F2778D3420E2AFA17C56135373DAB9272282880381ED371343F23D0F356901967BCE7E66FF50166BD13D133930685A666E606E1B0469B0054079F02DA49F6B12557CD8A45C5228D16C1C3144D9FDE3DA97D6A0D5FBE592111D78268560E8C732D101E4B390B50A1C), ('e9428c59-d5df-465a-ace1-966de0e6fbfc'), (null), ('1900-01-01 00:00:00'), ('3/30/2017 12:56:46 PMThe quick brown fox jumps over the lazy dog0123456789,.;:?[]{}()-+*\%^=~!@#_|/003/30/2017 12:56:46 PMThe quick brown fox jumps over the lazy dog0123456789,.;:?[]{}()-+*\%^=~!@#_|/00'), ('07:59:20.5782606'), ('0001-01-01'), ('5069-08-25 07:44:15.8923898'), ('2001-01-01 12:00:01.0000000+00:00'))"; $stmt = sqlsrv_query($conn, $query); } function FetchData($conn, $tableName, $phpType) { $stmt = sqlsrv_query($conn, "SELECT * FROM $tableName"); $result = sqlsrv_fetch($stmt); if ($result) { $numFields = sqlsrv_num_fields($stmt); for ($i = 0; $i < $numFields; $i++) { $value = sqlsrv_get_field($stmt, $i, $phpType); if ($value === false) { echo "Failed in field $i\n"; } } } } //-------------------------------------------------------------------- // RunTest // //-------------------------------------------------------------------- function RunTest() { startTest("sqlsrv_fetch_invalid_types"); try { set_time_limit(0); sqlsrv_configure('WarningsReturnAsErrors', 1); echo "\nTest begins...\n"; // Connect $conn = connect(array('CharacterSet'=>'UTF-8')); if (!$conn) { fatalError("Could not connect.\n"); } $tableName = GetTempTableName(); PopulateTestTable($conn, $tableName); echo "Fetch all as integers...\n"; FetchData($conn, $tableName, SQLSRV_PHPTYPE_INT); echo "Fetch all as floats...\n"; FetchData($conn, $tableName, SQLSRV_PHPTYPE_FLOAT); echo "Fetch all as datetimes...\n"; FetchData($conn, $tableName, SQLSRV_PHPTYPE_DATETIME); sqlsrv_close($conn); } catch (Exception $e) { echo $e->getMessage(); } echo "\nDone\n"; endTest("sqlsrv_fetch_invalid_types"); } RunTest(); ?> --EXPECT--  Test begins... Fetch all as integers... Failed in field 8 Failed in field 9 Failed in field 11 Failed in field 13 Failed in field 14 Failed in field 16 Failed in field 17 Failed in field 19 Failed in field 20 Failed in field 21 Failed in field 22 Failed in field 23 Failed in field 24 Failed in field 25 Failed in field 26 Failed in field 27 Failed in field 28 Failed in field 29 Failed in field 30 Fetch all as floats... Failed in field 11 Failed in field 13 Failed in field 14 Failed in field 16 Failed in field 17 Failed in field 19 Failed in field 20 Failed in field 21 Failed in field 22 Failed in field 23 Failed in field 24 Failed in field 25 Failed in field 26 Failed in field 27 Failed in field 28 Failed in field 29 Failed in field 30 Fetch all as datetimes... Failed in field 0 Failed in field 1 Failed in field 4 Failed in field 11 Failed in field 13 Failed in field 14 Failed in field 16 Failed in field 17 Failed in field 20 Failed in field 21 Failed in field 22 Failed in field 23 Failed in field 26 Done Test "sqlsrv_fetch_invalid_types" completed successfully.