Php 转换字符串字符'<';作为一个比较字符<;

Php 转换字符串字符'<';作为一个比较字符<;,php,xhtml,Php,Xhtml,可能重复: 有没有办法转换“简短的回答是否定的 但是,请看一看,因为它可能会实现您本机所追求的目标(取决于您试图实现的目标) 如果没有,您可以执行以下操作: function compare($string1, $string2, $operator) { $cmp = strnatcmp($string1, $string2); switch($operator) { case '>': return ($cmp > 0);

可能重复:


有没有办法转换“简短的回答是否定的

但是,请看一看,因为它可能会实现您本机所追求的目标(取决于您试图实现的目标)

如果没有,您可以执行以下操作:

function compare($string1, $string2, $operator) {
    $cmp = strnatcmp($string1, $string2);

    switch($operator) {
        case '>':  return ($cmp >  0);
        case '>=': return ($cmp >= 0);
        case '<':  return ($cmp <  0);
        case '<=': return ($cmp <= 0);
        // expand as necessary
    }
}
函数比较($string1、$string2、$operator){
$cmp=strnatcmp($string1,$string2);
交换机($操作员){
案例“>”:返回($cmp>0);
案例“>=”:返回($cmp>=0);
case'eval()函数允许您将字符串作为PHP代码进行求值。例如:

eval('echo 2 < 3');
eval('echo 2<3');

将打印1。

目的是什么?您的问题目前没有提供足够的信息。目的是什么?简短的答案是否定的,但可能有更好的方法来实现您的预期目标。(提示)编辑问题后,这似乎是一个相当危险的选项。如果检索到比较操作(未选中)从数据库中,
eval
基本上可以执行任意php代码,无论数据库中(恶意)写入了什么。在执行eval()之前,只需检查从数据库中检索到的内容是否符合您的预期。eval()只有在错误和不安全地实现时才是邪恶的。@user705339请参见,例如、、和。但是,也有一些情况。