1

この表現をどのように表現するのが最善ですか:

echo isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : ''

このパラメータ内:

<?php
    echo "
    <input type='text' value=' *INSERT EXPRESSION* ' />
    ";
?>

引用符内の引用符を処理する最善の方法がわからないので、助けていただければ幸いです。全体的な構文を変更することでこれを回避できることは承知していますが、これらの制限を考えると、どうすればこれを行うのが最善でしょうか? ご協力いただきありがとうございます!

4

5 に答える 5

2

これを行う最も簡単な方法...

<?php
    $exp = isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '';

    echo "<input type='text' value=' $exp ' />";
?>
于 2012-08-22T04:36:05.947 に答える
0

これを試して、

<?php
    define('URL',isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '');
    echo "<input type='text' value=' ".URL." ' />";
?>
于 2012-08-22T04:48:03.087 に答える
0

これらの線に沿って何か多分?

<?php
    echo "
    <input type='text' value='" . 
        (isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '') . 
    "' />";
?>
于 2012-08-22T04:36:21.017 に答える
0

ここにいくつかの方法があります:

方法1:

<?php
    $expression = isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '';

    echo "
    <input type='text' value='$expression' />
    ";
?>

方法2:

<?php
    $expression = isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '';

    echo "
    <input type='text' value='" . $expression . "' />
    ";
?>

方法3:

<?php
    echo "
    <input type='text' value='" . isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '' . "' />
    ";
?>

更新:
方法4:PHPによる処理が高速であるため、方法4または5のいずれかを使用します。ここでの変更は、二重引用符ではなく一重引用符を使用していることです。

<?php
    echo '
    <input type="text" value="' . isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '' . '" />
    ';
?>

方法5:

<?php
    $expression = isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '';

    echo '
    <input type="text" value="' . $expression . '" />
    ';
?>
于 2012-08-22T04:39:29.080 に答える
0

いつも使っていますprintf()

<?php

    printf("\n<input type='text' value='%s' />\n", isset($GLOBALS['_url']) ? htmlspecialchars($GLOBALS['_url']) : '');

?>
于 2012-08-22T04:47:36.723 に答える