[英]variable name as input for string use in php
假設我們要提供輸入,以便程序理解我們使用的變量。 例如:
$name=$_POST['name'];
$p='...';
$sqlLogin= "SELECT user_id FROM user WHERE username=' ".$name." ' ";
如果輸入為{$p}
,則不打印變量,結果為:
SELECT user_id FROM user WHERE username='{$p}'
程序是否有辦法(通過輸入)將{$ p}理解為變量,就像我們編寫時一樣
$sqlLogin= "SELECT user_id FROM user WHERE username='{$p}'";
只是為了在這里證明概念:
$name = '{$p}';
$p= 'MYVALUE';
echo eval("return \"".eval("return 'SELECT * FROM tblname WHERE username =\'$name\'';").'";');
結果:
SELECT * FROM tblname,其中用戶名=“ MYVALUE”
但是要避免使用eval();
祝你今天愉快;
您將需要使用eval()函數,因為該變量是一個字符串,因此代碼將其視為此類,但是您希望將字符串作為代碼來運行。
eval("$sqlLogin = \\"SELECT user_id FROM user WHERE username='{$p}'\\"")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.