PHP හි PDO හි ස්ථාන රදවනයන් ස්වයංක්රීයව උපුටා දැක්වීම් වලින් වැසීම
තාක්ෂණික වශයෙන් PDO සියලුම ඇතුල් කරන අගයන් ඒවා අංක වුවද, ඒවා අනුලකුණු ලෙස සලකමින් උපුටා දැක්වීම් වලින් වසයි. මෙය SQL වාක්ය රීතියෙන් අවසර ඇත. එබැවින්, ඔබට අනුලකුණු අගයක් ඇත්නම්, ස්ථාන රදවනයන් උපුටා දැක්වීම් වලින් වැසීමට අවශ්ය නොවේ.
අපි උදාහරණයක් බලමු. අපගේ විචල්යයක අනුලකුණුවක් ගබඩා කර ඇතැයි සිතමු:
<?php
$name = 'name1';
?>
මෙම අවස්ථාවේදී, ස්ථානික ස්ථාන රදවනයක් අනුලකුණුවකින් වැසීමට අවශ්ය නොවේ:
<?php
$sql = 'SELECT * FROM users WHERE name=?';
$res = $pdo->prepare();
$res->execute([$name]);
?>
නම් කළ ස්ථාන රදවනයක් ද අනුලකුණුවකින් වැසීමට අවශ්ය නොවේ:
<?php
$sql = 'SELECT * FROM users WHERE name=:name';
$res = $pdo->prepare();
$res->execute(['name' => $name]);
?>
විමසුමේ සැමවිටම අනුලකුණු ඇති බව, සමහර විට SQL වාක්ය රීතියේ ගැටලු ඇති කළ හැකිය - වාක්ය රීතිය අනුව අනිවාර්යයෙන්ම අංක අවශ්ය වන තැන් වල. මෙම අවස්ථාවේදී, පරාමිති බැඳීමේ විකල්ප ක්රමය භාවිතා කළ හැකිය, එය අපි ඊළඟ පාඩම් වලින් විග්රහ කරමු.