ID: 48290
User updated by: kexianbin at diyism dot com
Reported By: kexianbin at diyism dot com
Status: Wont fix
Bug Type: Feature/Change Request
Operating System: Irrelevant
PHP Version: 5.3.2
New Comment:
Rasmus,
Why not have a think about adding addslash function to double-quoted
strings?
That maybe the simplest solution for variables replacement in sql query
string.
With the addslash function in double-quoted strings, we could code like
this:
$rs=$pdo->query("select *
from sem_SearchChangeShow
where Keyword={#Keyword}
and BatchNum={#BatchNum}
and OldChannelID={#ApvChannelID_old}
and OldCategoryID={#ApvCategoryID_old}
");
$data=$rs->fetch(PDO::FETCH_ASSOC);
But, without it, we have to code like these:
$sql=$pdo->prepare("select *
from sem_SearchChangeShow
where Keyword=:Keyword
and BatchNum=:BatchNum
and OldChannelID=:ApvChannelID_old
and OldCategoryID=:ApvCategoryID_old
");
$sql->execute(array(':Keyword'=>$Keyword,
':BatchNum'=>$BatchNum,
':ApvChannelID_old'=>$ApvChannelID_old,
':ApvCategoryID_old'=>$ApvCategoryID_old
)
);
$data=$sql->fetch(PDO::FETCH_ASSOC);
Please don't set the feature request to "won't fix".
Previous Comments:
------------------------------------------------------------------------
[2009-11-10 04:34:59] [email protected]
This is not going to happen.
------------------------------------------------------------------------
[2009-11-10 04:23:10] kexianbin at diyism dot com
Update expected version to 5.3.2
------------------------------------------------------------------------
[2009-11-10 04:12:30] kexianbin at diyism dot com
Try to reopen it.
------------------------------------------------------------------------
[2009-08-11 02:41:41] kexianbin at diyism dot com
Why set this as bogus?
Why don't you realize that the advantage of PHP is right the incredible
convenience for web programmers?!
For example, 'substr' is of the best design in all these languages:
java, sql, javascript, python, ruby, etc,
...substr($aStr,index_start,length(>=0)/index_after_end(<0))...
that is just the right PHP tradition.
I know PDO and prepared statements is ok,
but those method is really trivial and by no means intuitive.
Why don't you just make a little change to the variable parsing
function of the double quoted strings to save we programmers a very
enormous time wasting?
In fact, we have no way to reduce the code if we adopt PDO and prepared
statements, obviously every variable name apears twice(even apears as a
question mark):
$sql=$pdo->prepare("select *
from sem_SearchChangeShow
where Keyword=:Keyword
and BatchNum=:BatchNum
and OldChannelID=:ApvChannelID_old
and OldCategoryID=:ApvCategoryID_old
");
$sql->execute(array(':Keyword'=>$v['Keyword'],
':BatchNum'=>$v['BatchNum'],
':ApvChannelID_old'=>$v['ApvChannelID_old'],
':ApvCategoryID_old'=>$v['ApvCategoryID_old']
)
);
$tmp=$sql->fetch(PDO::FETCH_ASSOC);
------------------------------------------------------------------------
[2009-08-10 13:15:25] [email protected]
Or PDO.. :)
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/48290
--
Edit this bug report at http://bugs.php.net/?id=48290&edit=1