-/* Generated by re2c 0.9.4 on Thu Apr 14 09:40:52 2005 */
+/* Generated by re2c 0.9.6 on Thu Apr 14 18:29:11 2005 */
#line 1 "pdo_sql_parser.re"
/*
+----------------------------------------------------------------------+
168, 168, 168, 168, 168, 168, 168, 168,
};
goto yy0;
-yy1: ++YYCURSOR;
+ ++YYCURSOR;
yy0:
if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
- if(yybm[0+yych] & 8) goto yy8;
+ if(yybm[0+yych] & 8) {
+ goto yy8;
+ }
if(yych <= 0x00) goto yy11;
if(yych <= '&') goto yy2;
if(yych <= '\'') goto yy4;
yy3:
#line 62 "pdo_sql_parser.re"
{ RET(PDO_PARSER_TEXT); }
-#line 63 "<stdout>"
+#line 65 "<stdout>"
yy4: yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if(yych <= 0x00) goto yy3;
if(yych == '"') goto yy3;
goto yy17;
yy5: yych = *++YYCURSOR;
- if(yybm[0+yych] & 16) goto yy13;
+ if(yybm[0+yych] & 16) {
+ goto yy13;
+ }
goto yy3;
yy6: ++YYCURSOR;
goto yy7;
yy7:
#line 61 "pdo_sql_parser.re"
{ RET(PDO_PARSER_BIND_POS); }
-#line 77 "<stdout>"
+#line 81 "<stdout>"
yy8: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy9;
-yy9: if(yybm[0+yych] & 8) goto yy8;
+yy9: if(yybm[0+yych] & 8) {
+ goto yy8;
+ }
goto yy10;
yy10:
#line 63 "pdo_sql_parser.re"
{ RET(PDO_PARSER_TEXT); }
-#line 88 "<stdout>"
+#line 94 "<stdout>"
yy11: ++YYCURSOR;
goto yy12;
yy12:
#line 64 "pdo_sql_parser.re"
{ RET(PDO_PARSER_EOI); }
-#line 94 "<stdout>"
+#line 100 "<stdout>"
yy13: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy14;
-yy14: if(yybm[0+yych] & 16) goto yy13;
+yy14: if(yybm[0+yych] & 16) {
+ goto yy13;
+ }
goto yy15;
yy15:
#line 60 "pdo_sql_parser.re"
{ RET(PDO_PARSER_BIND); }
-#line 105 "<stdout>"
+#line 113 "<stdout>"
yy16: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy17;
-yy17: if(yybm[0+yych] & 32) goto yy16;
+yy17: if(yybm[0+yych] & 32) {
+ goto yy16;
+ }
if(yych <= '&') goto yy18;
if(yych <= '\'') goto yy19;
goto yy22;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy20;
-yy20: if(yybm[0+yych] & 32) goto yy16;
+yy20: if(yybm[0+yych] & 32) {
+ goto yy16;
+ }
if(yych <= '&') goto yy21;
if(yych <= '\'') goto yy19;
goto yy22;
yy21:
#line 59 "pdo_sql_parser.re"
{ RET(PDO_PARSER_TEXT); }
-#line 132 "<stdout>"
+#line 144 "<stdout>"
yy22: ++YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if(YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
goto yy24;
-yy24: if(yybm[0+yych] & 128) goto yy23;
+yy24: if(yybm[0+yych] & 128) {
+ goto yy23;
+ }
if(yych <= 0x00) goto yy18;
if(yych <= '[') goto yy26;
goto yy25;
yy27:
#line 58 "pdo_sql_parser.re"
{ RET(PDO_PARSER_TEXT); }
-#line 159 "<stdout>"
+#line 173 "<stdout>"
}
#line 65 "pdo_sql_parser.re"
}
/* }}} */
-/* {{{ proto string PDOStatement::fetchSingle()
- Returns a data of the 1st column in the result set. */
-static PHP_METHOD(PDOStatement, fetchSingle)
+/* {{{ proto string PDOStatement::fetchColumn([int column_number])
+ Returns a data of the specified column in the result set. */
+static PHP_METHOD(PDOStatement, fetchColumn)
{
pdo_stmt_t *stmt = (pdo_stmt_t*)zend_object_store_get_object(getThis() TSRMLS_CC);
+ long col_n = 0;
- if (ZEND_NUM_ARGS()) {
+ if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|l", &col_n)) {
RETURN_FALSE;
}
RETURN_FALSE;
}
- fetch_value(stmt, return_value, 0 TSRMLS_CC);
+ fetch_value(stmt, return_value, col_n TSRMLS_CC);
}
/* }}} */
PHP_ME(PDOStatement, bindParam, second_arg_force_ref, ZEND_ACC_PUBLIC)
PHP_ME(PDOStatement, bindColumn, second_arg_force_ref, ZEND_ACC_PUBLIC)
PHP_ME(PDOStatement, rowCount, NULL, ZEND_ACC_PUBLIC)
- PHP_ME(PDOStatement, fetchSingle, NULL, ZEND_ACC_PUBLIC)
+ PHP_ME(PDOStatement, fetchColumn, NULL, ZEND_ACC_PUBLIC)
PHP_ME(PDOStatement, fetchAll, NULL, ZEND_ACC_PUBLIC)
PHP_ME(PDOStatement, fetchObject, NULL, ZEND_ACC_PUBLIC)
PHP_ME(PDOStatement, errorCode, NULL, ZEND_ACC_PUBLIC)