Целочисленный тип PHP теряется при вызове функции - PullRequest
0 голосов
/ 05 сентября 2011

У меня есть код, который извлекает первичные ключи базы данных и перебирает их, вызывая функцию.

Когда я получаю ключ из базы данных и выполняю is_int ($ key), он возвращает true.

Затем я вызываю функцию: thisfunction ($ key)

В вызывающей функции я сделал так, чтобы вы могли передать ключ $, и эта функция загружает строку для этого ключа, или вы можете передать строку как объект. В начале вызываемой функции она проверяет, является ли $ key is_int. Он возвращает false, когда я вызываю его с целочисленным значением.

Ответы [ 3 ]

1 голос
/ 05 сентября 2011

Все, что вы получаете из базы данных, является строкой.

Это означает, что даже если у вас есть база данных с INT для столбцов, вы получите их как:

id, name, age
array("43", "Rok", "19");
0 голосов
/ 05 сентября 2011

Поскольку все, что вы выбираете из базы данных, является строкой типа, вы можете попробовать использовать is_numeric () вместо is_int ().

0 голосов
/ 05 сентября 2011

Возможно, попробуйте функцию ctype_digit ().

...