Перейти к контенту

преобразование $ #@ !


Рекомендуемые сообщения

я уже скоро пробью лбов монитор, ибо php не знаю...

помогите. значит у меня есть строка, допустим

$TX

в ней хранится текст вида

asdfgh654321^%$#@!

 

мне нужно преобразовать строку в исходный человеческий текст, т.е.

asdfgh654321^%$#@!

 

HEPL

 

тьфу гад, форум пропарсил исходную строку....

значит было

6; #@ 3;

(без пробелов)

Ссылка на комментарий
Поделиться на других сайтах

Вобще, допустим при авторизации: в поле вводится текст (пароль) (ну и соответственно в переменную $TX допустим), при этом символы вроде $ и ! заменяются на их Html-эквиваленты - $ ; ! ;

мне надо, чтобы в этой переменной Html-эквиваленты были обратно заменены на символы. то есть преобразовать всякие $ ; ! ; в $ и !.

Ссылка на комментарий
Поделиться на других сайтах

да мне хоть как. только подскажите.. А то ведь мои знания PHP основаны на копи-пейст с анализом того, чего я копи-пейстю... А команд я не знаю :D Понимаю только логику.
Ссылка на комментарий
Поделиться на других сайтах

и это что мне, под каждый символ отдельную строку что ли писать?

гд можно разжиться информацией о таких "заменах" клавиатурных символов? может я чего-то пропустил...

Ссылка на комментарий
Поделиться на других сайтах

str_replace($array,$array,$array) - вполне нормальная конструкция и она вполне нормально сработает.
Ссылка на комментарий
Поделиться на других сайтах

и как надо задать первый и второй массивы?

 

p.s. IBR'овцы - поделитесь просто куском парсера вашего форума... у вас то он парсит коды в символы......

 

должно помочь

 

$entities = array(
'nbsp' => 160, 'iexcl' => 161, 'cent' => 162, 'pound' => 163,
'curren' => 164, 'yen' => 165, 'brvbar' => 166, 'sect' => 167,
'uml' => 168, 'copy' => 169, 'ordf' => 170, 'laquo' => 171,
'not' => 172, 'shy' => 173, 'reg' => 174, 'macr' => 175,
'deg' => 176, 'plusmn' => 177, 'sup2' => 178, 'sup3' => 179,
'acute' => 180, 'micro' => 181, 'para' => 182, 'middot' => 183,
'cedil' => 184, 'sup1' => 185, 'ordm' => 186, 'raquo' => 187,
'frac14' => 188, 'frac12' => 189, 'frac34' => 190, 'iquest' => 191,
'Agrave' => 192, 'Aacute' => 193, 'Acirc' => 194, 'Atilde' => 195,
'Auml' => 196, 'Aring' => 197, 'AElig' => 198, 'Ccedil' => 199,
'Egrave' => 200, 'Eacute' => 201, 'Ecirc' => 202, 'Euml' => 203,
'Igrave' => 204, 'Iacute' => 205, 'Icirc' => 206, 'Iuml' => 207,
'ETH' => 208, 'Ntilde' => 209, 'Ograve' => 210, 'Oacute' => 211,
'Ocirc' => 212, 'Otilde' => 213, 'Ouml' => 214, 'times' => 215,
'Oslash' => 216, 'Ugrave' => 217, 'Uacute' => 218, 'Ucirc' => 219,
'Uuml' => 220, 'Yacute' => 221, 'THORN' => 222, 'szlig' => 223,
'agrave' => 224, 'aacute' => 225, 'acirc' => 226, 'atilde' => 227,
'auml' => 228, 'aring' => 229, 'aelig' => 230, 'ccedil' => 231,
'egrave' => 232, 'eacute' => 233, 'ecirc' => 234, 'euml' => 235,
'igrave' => 236, 'iacute' => 237, 'icirc' => 238, 'iuml' => 239,
'eth' => 240, 'ntilde' => 241, 'ograve' => 242, 'oacute' => 243,
'ocirc' => 244, 'otilde' => 245, 'ouml' => 246, 'divide' => 247,
'oslash' => 248, 'ugrave' => 249, 'uacute' => 250, 'ucirc' => 251,
'uuml' => 252, 'yacute' => 253, 'thorn' => 254, 'yuml' => 255,
'fnof' => 402, 'Alpha' => 913, 'Beta' => 914, 'Gamma' => 915,
'Delta' => 916, 'Epsilon' => 917, 'Zeta' => 918, 'Eta' => 919,
'Theta' => 920, 'Iota' => 921, 'Kappa' => 922, 'Lambda' => 923,
'Mu' => 924, 'Nu' => 925, 'Xi' => 926, 'Omicron' => 927,
'Pi' => 928, 'Rho' => 929, 'Sigma' => 931, 'Tau' => 932,
'Upsilon' => 933, 'Phi' => 934, 'Chi' => 935, 'Psi' => 936,
'Omega' => 937, 'alpha' => 945, 'beta' => 946, 'gamma' => 947,
'delta' => 948, 'epsilon' => 949, 'zeta' => 950, 'eta' => 951,
'theta' => 952, 'iota' => 953, 'kappa' => 954, 'lambda' => 955,
'mu' => 956, 'nu' => 957, 'xi' => 958, 'omicron' => 959,
'pi' => 960, 'rho' => 961, 'sigmaf' => 962, 'sigma' => 963,
'tau' => 964, 'upsilon' => 965, 'phi' => 966, 'chi' => 967,
'psi' => 968, 'omega' => 969, 'thetasym' => 977, 'upsih' => 978,
'piv' => 982, 'bull' => 8226, 'hellip' => 8230, 'prime' => 8242,
'Prime' => 8243, 'oline' => 8254, 'frasl' => 8260, 'weierp' => 8472,
'image' => 8465, 'real' => 8476, 'trade' => 8482, 'alefsym' => 8501,
'larr' => 8592, 'uarr' => 8593, 'rarr' => 8594, 'darr' => 8595,
'harr' => 8596, 'crarr' => 8629, 'lArr' => 8656, 'uArr' => 8657,
'rArr' => 8658, 'dArr' => 8659, 'hArr' => 8660, 'forall' => 8704,
'part' => 8706, 'exist' => 8707, 'empty' => 8709, 'nabla' => 8711,
'isin' => 8712, 'notin' => 8713, 'ni' => 8715, 'prod' => 8719,
'sum' => 8721, 'minus' => 8722, 'lowast' => 8727, 'radic' => 8730,
'prop' => 8733, 'infin' => 8734, 'ang' => 8736, 'and' => 8743,
'or' => 8744, 'cap' => 8745, 'cup' => 8746, 'int' => 8747,
'there4' => 8756, 'sim' => 8764, 'cong' => 8773, 'asymp' => 8776,
'ne' => 8800, 'equiv' => 8801, 'le' => 8804, 'ge' => 8805,
'sub' => 8834, 'sup' => 8835, 'nsub' => 8836, 'sube' => 8838,
'supe' => 8839, 'oplus' => 8853, 'otimes' => 8855, 'perp' => 8869,
'sdot' => 8901, 'lceil' => 8968, 'rceil' => 8969, 'lfloor' => 8970,
'rfloor' => 8971, 'lang' => 9001, 'rang' => 9002, 'loz' => 9674,
'spades' => 9824, 'clubs' => 9827, 'hearts' => 9829, 'diams' => 9830,
'quot' => 34, 'amp' => 38, 'lt' => 60, 'gt' => 62,
'OElig' => 338, 'oelig' => 339, 'Scaron' => 352, 'scaron' => 353,
'Yuml' => 376, 'circ' => 710, 'tilde' => 732, 'ensp' => 8194,
'emsp' => 8195, 'thinsp' => 8201, 'zwnj' => 8204, 'zwj' => 8205,
'lrm' => 8206, 'rlm' => 8207, 'ndash' => 8211, 'mdash' => 8212,
'lsquo' => 8216, 'rsquo' => 8217, 'sbquo' => 8218, 'ldquo' => 8220,
'rdquo' => 8221, 'bdquo' => 8222, 'dagger' => 8224, 'Dagger' => 8225,
'permil' => 8240, 'lsaquo' => 8249, 'rsaquo' => 8250, 'euro' => 8364
);

foreach ($entities as $entity => $charcode) {
$t = str_replace('&' . $entity . ';', '' . $charcode . ';', $t);
}

или можно ли применить таку конструкцию? если да, то какие должны быть массивы $entity, $charcode ?

 

Пожалуй тему можно закрывать, все как всегда нашел сам.. Поюзал поиск по коду форума и в нескольких местах нашел то, что мне надо

				$PWT = str_replace( "'"   , "'", $PWT );
			$PWT = str_replace( "!"   , "!", $PWT );
			$PWT = str_replace( "$"  , "$", $PWT );
			$PWT = str_replace( "|"  , "|", $PWT );
			$PWT = str_replace( "&"   , "&", $PWT );
			$PWT = str_replace( ">"	, ">", $PWT );
			$PWT = str_replace( "<"	, "<", $PWT );
			$PWT = str_replace( """  , '"', $PWT );

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.