0

onClick ボタンが PHP ファイルから値を要求してインポートし、この値をフォームに挿入する jQuery スクリプトがあります。

これで、正しいフィールドに値を正常に取得できますが、値に HTML コードが含まれており、 TEXT の結果のみが必要であるという問題があります。

フィールドの値が必要です: " Ethnicity " および値は " Caucasian "である必要があります

の値を確認するさまざまな方法を試しましたが$ethnicity、有線のものは次のとおりです。

echo $ethnicity;                   // result: Caucasian
var_dump($ethnicity);              // result: string(146) " Caucasian "
$result['ethnicity'] = $ethnicity; // result: {"ethnicity":" Caucasian<\/td>\r"}

ご覧のとおり、$result の値は次のとおりです。"Caucasian<\/td>\r"

私も試しました:

$result['ethnicity'] = ($ethnicity->textContent);   // result: It says "null"

私の質問は: この HTML コードをこの値から削除するにはどうすればよいですか?

4

4 に答える 4

2

そのための strip_tags があります http://php.net/manual/en/function.strip-tags.php

$result['ethnicity'] = strip_tags($ethnicity);
于 2013-11-07T10:59:09.667 に答える
0

filter_var()trim() 関数を使用して

$str = filter_var(trim($ethinicity,'\t\n\r\0\x0B'), FILTER_SANITIZE_STRING,FILTER_FLAG_STRIP_LOW);
于 2013-11-07T11:03:01.817 に答える
0
$val = trim($val);
$val = strip_tags($val);
$val = htmlentities($val, ENT_QUOTES, 'UTF-8'); // convert funky chars to html entities
$pat = array("\r\n", "\n\r", "\n", "\r"); // remove returns
$val = str_replace($pat, '', $val);
$pat = array('/^\s+/', '/\s{2,}/', '/\s+\$/'); // remove multiple whitespaces
$rep = array('', ' ', '');
$val = preg_replace($pat, $rep, $val);
$val = trim($val);
$val = mysql_real_escape_string($val); // excellent final step for MySQL entry

文字列を分離する単一の関数はありません........

参照

于 2013-11-07T11:38:36.180 に答える
0

あなたが利用することができますstrip_tags

$ethinicity=strip_tags($ethinicity);

(また)

この機能を活用する【PHPソースマニュアルより】

<?php 
function html2txt($document){ 
$search = array('@<script[^>]*?>.*?</script>@si',  // Strip out javascript 
               '@<[\/\!]*?[^<>]*?>@si',            // Strip out HTML tags 
               '@<style[^>]*?>.*?</style>@siU',    // Strip style tags properly 
               '@<![\s\S]*?--[ \t\n\r]*>@'         // Strip multi-line comments including CDATA 
); 
$text = preg_replace($search, '', $document); 
return $text; 
} 

$ethinicty=html2txt($ethinicity);
?>

編集:

現在、strip_tags を使用して「</td>」を削除しましたが、「\r」はまだ残っています。現在は次のようになっています: "Caucasian\r". Caucasian という単語の前の空白/スペースも削除できますか?

  $ethnicity = str_replace(' \r','',strip_tags($ethnicity));
于 2013-11-07T10:58:58.490 に答える