IT Share you

PHP에서 사용되지 않는 set_magic_quotes_runtime을 어떻게 바꿀 수 있습니까?

shareyou 2020. 12. 11. 20:55
반응형

PHP에서 사용되지 않는 set_magic_quotes_runtime을 어떻게 바꿀 수 있습니까?


사용해야하지만 작성하지 않은 PHP 스크립트를 실행하려고 할 때이 메시지가 나타납니다.

Deprecated: Function set_magic_quotes_runtime() is deprecated in /opt/lampp/htdocs/webEchange/SiteWeb_V5/inc/fpdf.php on line 1810

다음은 1810 행입니다.

set_magic_quotes_runtime(0);

이 기능이 더 이상 사용되지 않는 경우 무엇으로 바꿀 수 있습니까?

대단히 감사합니다!


먼저 켜져 있는지 확인하십시오. 그러면 경고가 없어지고 코드가 이전 버전의 PHP에서 실행되는 경우 마술 따옴표가 실제로 꺼져 있는지 확인할 수 있습니다.

PHP 5.3 이전에는 코드가 실행되지 않을 것이라고 100 % 확신 할 수 없다면 다른 사람들이 제안한대로 코드 줄을 제거하지 마십시오.

<?php
// Check if magic_quotes_runtime is active
if(get_magic_quotes_runtime())
{
    // Deactivate
    set_magic_quotes_runtime(false);
}
?>

get_magic_quotes_runtimePHP 5.3에서는 더 이상 사용되지 않습니다.
출처 : http://us2.php.net/get_magic_quotes_runtime/


나는 FPDF v. 1.53을 사용했고 가능한 부작용 때문에 업그레이드하고 싶지 않았습니다. Yacoby에 따라 다음 코드를 사용했습니다.

1164 행 :

if (version_compare(PHP_VERSION, '5.3.0', '<')) {
    $mqr=get_magic_quotes_runtime();
    set_magic_quotes_runtime(0);
}

1203 행 :

if (version_compare(PHP_VERSION, '5.3.0', '<')) {
    set_magic_quotes_runtime($mqr);
}

Magic Quotes는 이제 기본적으로 꺼져 있으며 제거 예정이므로 코드에서 해당 함수 호출을 제거하면됩니다.


아무것도 교체 할 필요가 없습니다. 설정 magic_quotes_runtimePHP6에서 제거 되었으므로 함수 호출이 필요하지 않습니다. 이전 버전과의 호환성을 유지하려면 version_compare를 사용하여 phpversion확인하는 if 문으로 래핑하는 것이 좋습니다.


FPDF 버전 1.6으로 업그레이드하십시오.


ini_set('magic_quotes_runtime', 0)

나는 추측한다.


@set_magic_quotes_runtime (0)이되도록 함수 앞에 접두사 "@"를 추가합니다. PHP 5.4에서 더 이상 지원되지 않으며 기능을 제거하거나 비활성화하지 마십시오.


이 코드를 스크립트 상단에 추가하여 문제를 해결하십시오.

@set_magic_quotes_runtime(false);
ini_set('magic_quotes_runtime', 0);

이 기능 업데이트 :

if (version_compare(PHP_VERSION, '5.3.0', '<')) {
  set_magic_quotes_runtime(0);
}
else {
  ini_set('magic_quotes_runtime', 0);
}
$magic_quotes = get_magic_quotes_runtime();
$file_buffer = fread($fd, filesize($path));
$file_buffer = $this->EncodeString($file_buffer, $encoding);
fclose($fd);
if ($magic_quotes) {
  if (version_compare(PHP_VERSION, '5.3.0', '<')) {
    set_magic_quotes_runtime($magic_quotes);
  }
  else {
    ini_set('magic_quotes_runtime', $magic_quotes);
  }
}

return $file_buffer;

PHP 7에서는 다음을 사용할 수 있습니다.

ini_set('magic_quotes_runtime', 0);

대신에 set_magic_quotes_runtime(0);

참고URL : https://stackoverflow.com/questions/2217955/how-can-i-replace-the-deprecated-set-magic-quotes-runtime-in-php

반응형