Bug #14217: Strange bug with strtr() function

From: Date: Sun, 25 Nov 2001 15:26:42 +0000
Subject: Bug #14217: Strange bug with strtr() function
Groups: php.dev 
Request: Send a blank email to php-dev+get-71599@lists.php.net to get a copy of this message
From: akul@otamedia.com Operating system: windows 98 PHP version: 4.0.6 PHP Bug Type: Strings related Bug description: Strange bug with strtr() function I have very simple function to convert some sumbols to underscores: function to_tag($text) { $from=" \"\t\\/:#$%^&*()=+-!`'~?<>[],."; $retval=strtr($text,$from,str_repeat('_',strlen($from))); // debug output echo "\r\n<BR>[$text] >> [$retval]"; return $retval; } And I have such string (first world is russian, Win-1251): "àâòîðñêàÿ d'fusion" On simple example all is Ok: <? include_once('tag.inc.php'); to_tag("àâòîðñêàÿ d'fusion"); ?> X-Powered-By: PHP/4.0.7-dev Content-type: text/html; charset=windows-1251 <BR>[àâòîðñêàÿ d'fusion] >> [àâòîðñêàÿ__d_fusion] But! If this function called from more complex real code, ['] doesn't converted: Function using to_tag(): function getPropXML($FID,$TID) { debug("getPropXML($FID,$TID)"); $value=$this->getProp($FID,$TID); $target=$this->getCopy($TID); return t(to_tag($target->Name) ,t('path',$this->getPath($TID)) .t('value',cdata($value)) .t('Parent',$this->getPath($target->ParentID))); } Debug output for object with this string: ... <BR>[Ðåñòîðàí] >> [Ðåñòîðàí] <BR>[àâòîðñêàÿ d'fusion] >> [àâòîðñêàÿ_d'fusion] <BR>[$25-70] >> [_25_70] ... I tried to clear situation and find point of bug, but can't :( -- Edit bug report at: http://bugs.php.net/?id=14217&edit=1

« previous php.dev (#71599) next »