Каковы псевдонимы для общих специальных символов программирования? [закрытый]

Я искал хороший и полный пример того, как динамически привязать несколько параметров запроса к любому запросу SELECT, INSERT, UPDATE и DELETE. Алек упоминает в своем ответе способ привязки результата, для меня функция get_result () после execute () для запросов SELECT работает отлично, и я могу извлечь все выбранные результаты в массив ассоциативные массивы.

Так или иначе, я закончил тем, что создал функцию, в которой я могу динамически связывать любое количество параметров с параметризованным запросом (используя функцию call_user_func_array) и получать результат выполнения запроса. Ниже приведена функция с ее документацией (пожалуйста, прочтите ее перед использованием - особенно важно понять параметр $ paremetersTypes - Type chars )

     /**
     * Prepares and executes a parametrized QUERY (SELECT, INSERT, UPDATE, DELETE)
     *
     * @param[in] $dbConnection mysqli database connection to be used for query execution
     * @param[in] $dbQuery parametrized query to be bind parameters for and then execute
     * @param[in] $isDMQ boolean value, should be set to TRUE for (DELETE, INSERT, UPDATE - Data manipulaiton queries), FALSE for SELECT queries
     * @param[in] $paremetersTypes String representation for input parametrs' types as per http://php.net/manual/en/mysqli-stmt.bind-param.php
     * @param[in] $errorOut A variable to be passed by reference where a string representation of an error will be present if a FAUILURE occurs
     * @param[in] $arrayOfParemetersToBind Parameters to be bind to the parametrized query, parameters need to be specified in an array in the correct order 
     * @return array of feched records associative arrays for SELECT query on SUCCESS, TRUE for INSERT, UPDATE, DELETE queries on SUCCESS, on FAIL sets the error and returns NULL 
     */
    function ExecuteMySQLParametrizedQuery($dbConnection, $dbQuery, $isDMQ, $paremetersTypes, &$errorOut, $arrayOfParemetersToBind)
    {
        $stmt = $dbConnection->prepare($dbQuery);

        $outValue = NULL;

        if ($stmt === FALSE)
            $errorOut = 'Failed to prepare statement for query: ' . $dbQuery;
        else if ( call_user_func_array(array($stmt, "bind_param"), array_merge(array($paremetersTypes), $arrayOfParemetersToBind)) === FALSE)
            $errorOut = 'Failed to bind required parameters to query: ' . $dbQuery . '  , parameters :' . json_encode($arrayOfParemetersToBind);
        else if (!$stmt->execute())
            $errorOut = "Failed to execute query [$dbQuery] , erorr:" . $stmt->error;
        else
        {
            if ($isDMQ)
               $outValue = TRUE;
            else
            {
                $result = $stmt->get_result();

                if ($result === FALSE) 
                     $errorOut = 'Failed to obtain result from statement for query ' . $dbQuery;
                else
                    $outValue = $result->fetch_all(MYSQLI_ASSOC);
            }
        }

        $stmt->close();

        return $outValue;
    }

использование:

    $param1 = "128989";
    $param2 = "some passcode";


    $insertQuery = "INSERT INTO Cards (Serial, UserPin) VALUES (?, ?)";
    $rowsInserted = ExecuteMySQLParametrizedQuery($dbConnection, $insertQuery, TRUE, 'ss', $errorOut, array(&$param1, &$param2) ); // Make sure the parameters in an array are passed by reference

    if ($rowsInserted === NULL)
        echo 'error ' . $errorOut;
    else
        echo "successfully inserted row";


    $selectQuery = "SELECT CardID FROM Cards WHERE Serial like ? AND UserPin like ?";
    $arrayOfCardIDs = ExecuteMySQLParametrizedQuery($dbConnection, $selectQuery, FALSE, 'ss', $errorOut, array(&$param1, &$param2) ); // Make sure the parameters in an array are passed by reference

    if ($arrayOfCardIDs === NULL) 
        echo 'error ' . $errorOut;
    else
    {
        echo 'obtained result array of ' . count($arrayOfCardIDs) . 'selected rows';

        if (count($arrayOfCardIDs) > 0) 
            echo 'obtained card id = ' . $arrayOfCardIDs[0]['CardID'];
    }

6
задан JeremyWeir 18 June 2009 в 02:47
поделиться

10 ответов

13
ответ дан 8 December 2019 в 02:07
поделиться

Вот несколько стихотворений:

<> !*''#
^"`$$-
!*=@$_
%*<> ~#4
&[]../
|{,,SYSTEM HALTED 

Стихотворение можно оценить, только прочитав его вслух:

Waka waka bang splat tick tick hash,
Caret quote back-tick dollar dollar dash,
Bang splat equal at dollar under-score,
Percent splat waka waka tilde number four,
Ampersand bracket bracket dot dot slash,
Vertical-bar curly-bracket comma comma CRASH.

Источник: http://babek.info/libertybasicfiles/lbnews /nl123/fun.htm

18
ответ дан 8 December 2019 в 02:07
поделиться

Стремитесь к ясности и не используйте сленг, а используйте общепринятое название каждого символа. Таким образом,

. dot or period
! exclamation point
* asterisk or star
% percent (sometimes mod)
& ampersand
< less than
{ left brace
[ left bracket
; semicolon
9
ответ дан 8 December 2019 в 02:07
поделиться

Интеркальное справочное руководство является исчерпывающим руководством:

.           spot                    identify 16-bit variable      
:           two-spot                identify 32-bit variable      
,           tail                    identify 16-bit array         
;           hybrid                  identify 32-bit array         
#           mesh                    identify constant             
=           half-mesh                                             
'           spark                   grouper                       
`           backspark                                             
!           wow                     equivalent to spark-spot      
?           what                    unary exlusive OR (ASCII)     
"           rabbit-ears             grouper                       
".          rabbit                  equivalent to ears-spot       
|           spike                                                 
%           double-oh-seven         percentage qualifier          
-           worm                    used with angles              
<           angle                   used with worms               
>           right angle                                           
(           wax                     precedes line label           
)           wane                    follows line label            
[           U turn                                                
]           U turn back                                           
{           embrace                                               
}           bracelet                                              
*           splat                   flags invalid statements      
&           ampersand[5]            unary logical AND             
V           V                       unary logical OR              
            (or book)                                             
V-          bookworm                unary exclusive OR            
            (or universal qualifier)                              
$           big money               unary exclusive OR (ASCII)                            
c|          change                  binary mingle                 
~           sqiggle                 binary select                 
_           flat worm                                             
            overline                indicates "times 1000"        
+           intersection            separates list items          
/           slat                                                  
\           backslat                                              
@           whirlpool                                             
-'         hookworm                                              
^           shark                                                 
            (or simply sharkfin)           
7
ответ дан 8 December 2019 в 02:07
поделиться

В дополнение к списку Тайлера МакГенри есть также запись Джеффа в блоге , которая ссылается на запись ASCII в The New Hacker's Словарь.

0
ответ дан 8 December 2019 в 02:07
поделиться

Обязательно найди те, которые больше приправлены британцами, мне нравится #! (читайте «хруст взрыва») как в CrunchBang Linux . И из-за чистой странности, мне нравится называть "#" "octothorpe".

Некоторые другие забавные, которые я слышал (мне было бы трудно найти их):

= "gets" (when reading C code "int num = 5;" would be "num gets five")
` "quasiquote" (lisp)
#! together are often pronounced "shebang" (consider that a kind of tech-dipthong)
1
ответ дан 8 December 2019 в 02:07
поделиться
# = "pound"

как в

#sand

или

#puppy
0
ответ дан 8 December 2019 в 02:07
поделиться

@ в русском языке произносится «собака» (собака) (для визуального изображения).

0
ответ дан 8 December 2019 в 02:07
поделиться

Обратите внимание на эти дополнения:

! not
@ these (Perl)
$ this (Perl)
: otherwise (ternary operator)
; stop (read as a telegram?)
* anything (regex-esque)
& and
| or
1
ответ дан 8 December 2019 в 02:07
поделиться

Хехе, когда я был ребенком, я называл "#" - символ (не смейтесь!) "eh". А "$" называл "xsssss".

0
ответ дан 8 December 2019 в 02:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: