2010-07-09 3 views
0

вы можете мне сказать, что является функцией intval? и что об этом?learning intval

'.intval($_POST['bla']).' 

ответ

5

Это простой способ предотвратить инъекции SQL. Если ваш запрос так:

$sql = "DELETE FROM salads WHERE id = " . $_POST['salad_id']; 

Затем, если пользователь передает строку «идентификатор» в вместо фактического идентификатора, то все ваши салаты будут удалены !!

Но если вы обернете вокруг него intval(), он преобразует любые плохие повязки в целые ноль, и салаты не будут затронуты.

$sql = "DELETE FROM salads WHERE id = " . intval($_POST['salad_id']); 
+2

Мне никогда не нравились салаты – ggfan

6

Почему бы не просто прочитать the manual article?

intval - Получить целое значение переменной

Эта таблица с этой страницы дает хороший пример:

echo intval(42);      // 42 
echo intval(4.2);      // 4 
echo intval('42');     // 42 
echo intval('+42');     // 42 
echo intval('-42');     // -42 
echo intval(042);      // 34 
echo intval('042');     // 42 
echo intval(1e10);     // 1410065408 
echo intval('1e10');     // 1 
echo intval(0x1A);     // 26 
echo intval(42000000);    // 42000000 
echo intval(420000000000000000000); // 0 
echo intval('420000000000000000000'); // 2147483647 
echo intval(42, 8);     // 42 
echo intval('42', 8);     // 34 
echo intval(array());     // 0 
echo intval(array('foo', 'bar'));  // 1 
+2

лол - ты ведешь себя, как это первый результат, если вы Google «intval» –

+3

Я думаю, что ответы от людей более «удобный», то мануалы – ggfan

+1

@ggfan вы читали РНР инструкции? Это ответы от людей, и у них есть основные темы обсуждения о всех возможных нюансах. –