я пытаюсь найти тег script как open () и close () в моей строке php. Пожалуйста, найдите мой код ниже
public function custom_xss_clean($str){
if(!preg_match('/(<\/?)(script|html)(>*)/i', $str)){
return true;
} else {
$this->form_validation->set_message('custom_xss_clean','The %s field invalid');
return false;
}
}
Этот код работает нормально в онлайн-инструменте, но не в моем коде для строки
<script>alert(10)</script>
Я пробовал так много шаблонов, но не повезло. Пожалуйста, помогите спасибо заранее.
Попробуй это
preg_match('/<script>[a-zA-Z0-9 \. \n \t\r \* \\ \* ~`!@#$%^&*()-_+={}\[\]\'":;?\/><.,|]*<\/script>/', $str);
Проверен также вы можете проверить вживую https://regex101.com/r/ih2C3F/1/
Вы имеете в виду, что вы хотите получить все между тегами сценария?
<?php
preg_match_all("|<[^>]+>(.*)</[^>]+>|U","<script>example: </script><div align=left>this is a test</div>",$out, PREG_PATTERN_ORDER);
echo '<pre>',
print_r($out);
если вы ищете xss_clean в codeigniter, перейдите по этой ссылке щелчок