.replace()
コードは必要ありません(文字列でのみ機能します)。PHP はすでに適切な変換を行うことができます。
$(function() {
var amount_min = <?php echo isset($_GET['amount_min']) ? (int)$_GET['amount_min'] : 0; ?>;
$('input[name=amount]').val(amount_min);
});
これにはフィルタリングを使用することもできます。
<?php echo filter_input(INPUT_GET, 'amount_min', FILTER_VALIDATE_INT, array('options' => array('default' => 0))); ?>
filter_input
は のような値を受け入れないことに注意してください100abc
。
JavaScript で文字列を安全に使用したい場合は、json_encode() を使用する必要があります。
ところで、JavaScript コード内の PHP からの未変更のリクエスト変数を含む回答はすべてecho
間違っており、XSS 攻撃を引き起こす可能性があります! あなたは警告されました。
アップデート
正規表現ベースの置換は、PHP でも実行できます。
var amount_min = <?php echo (int)preg_replace('/\D+/', '', isset($_GET['amount_min']) ? $_GET['amount_min'] : 0); ?>;
数字以外はすべて削除されるため、(int)
キャストを安全に適用できます。