Возможно ли заменить стандартную функцию PHP

  • Автор темы Pups The RAPtor
  • Дата начала

Pups The RAPtor

Guest
Возможно ли заменить стандартную функцию PHP

Добрый день.

Возможно ли заменить стандартную функцию PHP на свою собственную без залезания в исходники PHP?
В частности есть функция htmlentities, при ее использовании русские буквы в базу пишутся в виде "Îïèñàíèå ëåîíà". И выводятся соответственно в этом неудобном виде ;).
Проект изначально написан не мной, кода где используется htmlentities - очень много, руками выковыривать совершенно неохота. Первое что пришло в голову это сабж.
Подскажите, возможно ли это, или надо искать другое решенине. Было бы замечательно, если бы также подсказали это решение ;)).

Спасибо.
 

tony2001

TeaM PHPClub
если есть возможность, то скачайте и поставьте РНР с CVS.
хотя бы файл /ext/standard/html.c - эта функция в нем.
на CVS сейчас уже все исправлено, в 4.3.2 будет работать так, как ожидается.
 

Pups The RAPtor

Guest
О, спасибо за оперативность! Сроки горят ;).

К сожалению хостер скорее всего не будет морочиться с CVS, а уж тем более брать что-то оттуда. У них вообще пхп как cgi стоит и переход на 4.3.1 только ожидается.

Других вариантов нет?
 

tony2001

TeaM PHPClub
можно сделать свою, которая будет выполнять ту же функциональность, но я не вижу смысла (таблицы перекодировки в можно взять из исходников).
но проще взять 1(один) файл с цвс и попросить хостера собрать РНР с ним.
ничего военного там нет, багов новых не прибавится, только немного новых возможностей.

>У них вообще пхп как cgi стоит и переход на 4.3.1 только ожидается.
в таком случае, лучше от таких хостеров бежать и как можно быстрее.
 

Pups The RAPtor

Guest
Т.к. сроки ;), то я думал просто временно поставить пустышку т.е.
PHP:
function htmlentities($inp) {
   return $inp;
}
А потом потихоньку либо ждать 4.3.2, либо выковыривать ее из скриптов.

> можно сделать свою
А как, не подскажете?

А бежать не получится, домен не я размещал.
 

tony2001

TeaM PHPClub
>function htmlentities($inp)
нет, так не получится.
она будет конфиликтовать со стандартной.
назови ее my_htmlentities или как-то по-другому, а на исходники напусти скрипт, который все заменит.

>А как, не подскажете?
заменять символы с определенным кодом на определенные entities.
таблицы соответствий - в сорцах.
 

Pups The RAPtor

Guest
Ок, понятно, пойду писать скрипт.

Спасибо.
 
Сверху