| 200 | | $output = str_replace("--", "-", $output); |
| 201 | | $output = str_replace("/", "", $output); |
| 202 | | $output = str_replace("\\", "", $output); |
| 203 | | $output = str_replace("'", "", $output); |
| 204 | | $output = str_replace(",", "", $output); |
| 205 | | $output = str_replace(";", "", $output); |
| 206 | | $output = str_replace(":", "", $output); |
| 207 | | $output = str_replace(".", "-", $output); |
| 208 | | $output = str_replace("?", "", $output); |
| 209 | | $output = str_replace("=", "-", $output); |
| 210 | | $output = str_replace("+", "", $output); |
| 211 | | $output = str_replace("$", "", $output); |
| 212 | | $output = str_replace("&", "", $output); |
| 213 | | $output = str_replace("!", "", $output); |
| 214 | | $output = str_replace(">>", "-", $output); |
| 215 | | $output = str_replace(">", "-", $output); |
| 216 | | $output = str_replace("<<", "-", $output); |
| 217 | | $output = str_replace("<", "-", $output); |
| 218 | | $output = str_replace("*", "", $output); |
| 219 | | $output = str_replace(")", "", $output); |
| 220 | | $output = str_replace("(", "", $output); |
| 221 | | $output = str_replace("[", "", $output); |
| 222 | | $output = str_replace("]", "", $output); |
| 223 | | $output = str_replace("^", "", $output); |
| 224 | | $output = str_replace("%", "", $output); |
| 225 | | $output = str_replace("#", "", $output); |
| 226 | | $output = str_replace("@", "", $output); |
| 227 | | $output = str_replace("`", "", $output); |
| 228 | | $output = str_replace("‘", "", $output); |
| 229 | | $output = str_replace("’", "", $output); |
| 230 | | $output = str_replace("“", "", $output); |
| 231 | | $output = str_replace("”", "", $output); |
| 232 | | $output = str_replace("~", "", $output); |
| 233 | | $output = str_replace("–", "-", $output); |
| 234 | | $output = str_replace("\"", "", $output); |
| 235 | | $output = str_replace("|", "", $output); |
| 236 | | $output = str_replace("«", "", $output); |
| 237 | | $output = str_replace("»", "", $output); |
| 238 | | $output = str_replace("‹", "", $output); |
| 239 | | $output = str_replace("›", "", $output); |
| 240 | | $output = str_replace("…", "", $output); |
| 241 | | $output = str_replace("--", "-", $output); |
| 242 | | $output = str_replace("---", "-", $output); |
| 243 | | $output = str_replace("—", "-", $output); |
| 244 | | |
| 245 | | return $output; |
| 246 | | } |
| 247 | | |
| | 194 | return str_replace(array( |
| | 195 | '--' => '-', |
| | 196 | '/' => '', |
| | 197 | '\\' => '', |
| | 198 | '\'' => '', |
| | 199 | ',' => '', |
| | 200 | ';' => '', |
| | 201 | ':' => '', |
| | 202 | '.' => '-', |
| | 203 | '?' => '', |
| | 204 | '=' => '-', |
| | 205 | '+' => '', |
| | 206 | '$' => '', |
| | 207 | '&' => '', |
| | 208 | '!' => '', |
| | 209 | '>>' => '-', |
| | 210 | '>' => '-', |
| | 211 | '<<' => '-', |
| | 212 | '<' => '-', |
| | 213 | '*' => '', |
| | 214 | ')' => '', |
| | 215 | '(' => '', |
| | 216 | '[' => '', |
| | 217 | ']' => '', |
| | 218 | '^' => '', |
| | 219 | '%' => '', |
| | 220 | '#' => '', |
| | 221 | '@' => '', |
| | 222 | '`' => '', |
| | 223 | '‘' => '', |
| | 224 | '’' => '', |
| | 225 | '“' => '', |
| | 226 | '”' => '', |
| | 227 | '~' => '', |
| | 228 | '–' => '-', |
| | 229 | '"' => '', |
| | 230 | '|' => '', |
| | 231 | '«' => '', |
| | 232 | '»' => '', |
| | 233 | '‹' => '', |
| | 234 | '›' => '', |
| | 235 | '…' => '', |
| | 236 | '--' => '-', |
| | 237 | '---' => '-', |
| | 238 | '—' => '-'), '', preg_replace('/\s+/', '-', $input)); |
| | 239 | } |
| 303 | | // Decompositions for Latin-1 Supplement |
| 304 | | chr(195).chr(128) => 'A', chr(195).chr(129) => 'A', |
| 305 | | chr(195).chr(130) => 'A', chr(195).chr(131) => 'A', |
| 306 | | chr(195).chr(132) => 'A', chr(195).chr(133) => 'A', |
| 307 | | chr(195).chr(135) => 'C', chr(195).chr(136) => 'E', |
| 308 | | chr(195).chr(137) => 'E', chr(195).chr(138) => 'E', |
| 309 | | chr(195).chr(139) => 'E', chr(195).chr(140) => 'I', |
| 310 | | chr(195).chr(141) => 'I', chr(195).chr(142) => 'I', |
| 311 | | chr(195).chr(143) => 'I', chr(195).chr(145) => 'N', |
| 312 | | chr(195).chr(146) => 'O', chr(195).chr(147) => 'O', |
| 313 | | chr(195).chr(148) => 'O', chr(195).chr(149) => 'O', |
| 314 | | chr(195).chr(150) => 'O', chr(195).chr(153) => 'U', |
| 315 | | chr(195).chr(154) => 'U', chr(195).chr(155) => 'U', |
| 316 | | chr(195).chr(156) => 'U', chr(195).chr(157) => 'Y', |
| 317 | | chr(195).chr(159) => 's', chr(195).chr(160) => 'a', |
| 318 | | chr(195).chr(161) => 'a', chr(195).chr(162) => 'a', |
| 319 | | chr(195).chr(163) => 'a', chr(195).chr(164) => 'a', |
| 320 | | chr(195).chr(165) => 'a', chr(195).chr(167) => 'c', |
| 321 | | chr(195).chr(168) => 'e', chr(195).chr(169) => 'e', |
| 322 | | chr(195).chr(170) => 'e', chr(195).chr(171) => 'e', |
| 323 | | chr(195).chr(172) => 'i', chr(195).chr(173) => 'i', |
| 324 | | chr(195).chr(174) => 'i', chr(195).chr(175) => 'i', |
| 325 | | chr(195).chr(177) => 'n', chr(195).chr(178) => 'o', |
| 326 | | chr(195).chr(179) => 'o', chr(195).chr(180) => 'o', |
| 327 | | chr(195).chr(181) => 'o', chr(195).chr(182) => 'o', |
| 328 | | chr(195).chr(182) => 'o', chr(195).chr(185) => 'u', |
| 329 | | chr(195).chr(186) => 'u', chr(195).chr(187) => 'u', |
| 330 | | chr(195).chr(188) => 'u', chr(195).chr(189) => 'y', |
| 331 | | chr(195).chr(191) => 'y', |
| 332 | | // Decompositions for Latin Extended-A |
| 333 | | chr(196).chr(128) => 'A', chr(196).chr(129) => 'a', |
| 334 | | chr(196).chr(130) => 'A', chr(196).chr(131) => 'a', |
| 335 | | chr(196).chr(132) => 'A', chr(196).chr(133) => 'a', |
| 336 | | chr(196).chr(134) => 'C', chr(196).chr(135) => 'c', |
| 337 | | chr(196).chr(136) => 'C', chr(196).chr(137) => 'c', |
| 338 | | chr(196).chr(138) => 'C', chr(196).chr(139) => 'c', |
| 339 | | chr(196).chr(140) => 'C', chr(196).chr(141) => 'c', |
| 340 | | chr(196).chr(142) => 'D', chr(196).chr(143) => 'd', |
| 341 | | chr(196).chr(144) => 'D', chr(196).chr(145) => 'd', |
| 342 | | chr(196).chr(146) => 'E', chr(196).chr(147) => 'e', |
| 343 | | chr(196).chr(148) => 'E', chr(196).chr(149) => 'e', |
| 344 | | chr(196).chr(150) => 'E', chr(196).chr(151) => 'e', |
| 345 | | chr(196).chr(152) => 'E', chr(196).chr(153) => 'e', |
| 346 | | chr(196).chr(154) => 'E', chr(196).chr(155) => 'e', |
| 347 | | chr(196).chr(156) => 'G', chr(196).chr(157) => 'g', |
| 348 | | chr(196).chr(158) => 'G', chr(196).chr(159) => 'g', |
| 349 | | chr(196).chr(160) => 'G', chr(196).chr(161) => 'g', |
| 350 | | chr(196).chr(162) => 'G', chr(196).chr(163) => 'g', |
| 351 | | chr(196).chr(164) => 'H', chr(196).chr(165) => 'h', |
| 352 | | chr(196).chr(166) => 'H', chr(196).chr(167) => 'h', |
| 353 | | chr(196).chr(168) => 'I', chr(196).chr(169) => 'i', |
| 354 | | chr(196).chr(170) => 'I', chr(196).chr(171) => 'i', |
| 355 | | chr(196).chr(172) => 'I', chr(196).chr(173) => 'i', |
| 356 | | chr(196).chr(174) => 'I', chr(196).chr(175) => 'i', |
| 357 | | chr(196).chr(176) => 'I', chr(196).chr(177) => 'i', |
| 358 | | chr(196).chr(178) => 'IJ', chr(196).chr(179) => 'ij', |
| 359 | | chr(196).chr(180) => 'J', chr(196).chr(181) => 'j', |
| 360 | | chr(196).chr(182) => 'K', chr(196).chr(183) => 'k', |
| 361 | | chr(196).chr(184) => 'k', chr(196).chr(185) => 'L', |
| 362 | | chr(196).chr(186) => 'l', chr(196).chr(187) => 'L', |
| 363 | | chr(196).chr(188) => 'l', chr(196).chr(189) => 'L', |
| 364 | | chr(196).chr(190) => 'l', chr(196).chr(191) => 'L', |
| 365 | | chr(197).chr(128) => 'l', chr(197).chr(129) => 'L', |
| 366 | | chr(197).chr(130) => 'l', chr(197).chr(131) => 'N', |
| 367 | | chr(197).chr(132) => 'n', chr(197).chr(133) => 'N', |
| 368 | | chr(197).chr(134) => 'n', chr(197).chr(135) => 'N', |
| 369 | | chr(197).chr(136) => 'n', chr(197).chr(137) => 'N', |
| 370 | | chr(197).chr(138) => 'n', chr(197).chr(139) => 'N', |
| 371 | | chr(197).chr(140) => 'O', chr(197).chr(141) => 'o', |
| 372 | | chr(197).chr(142) => 'O', chr(197).chr(143) => 'o', |
| 373 | | chr(197).chr(144) => 'O', chr(197).chr(145) => 'o', |
| 374 | | chr(197).chr(146) => 'OE', chr(197).chr(147) => 'oe', |
| 375 | | chr(197).chr(148) => 'R', chr(197).chr(149) => 'r', |
| 376 | | chr(197).chr(150) => 'R', chr(197).chr(151) => 'r', |
| 377 | | chr(197).chr(152) => 'R', chr(197).chr(153) => 'r', |
| 378 | | chr(197).chr(154) => 'S', chr(197).chr(155) => 's', |
| 379 | | chr(197).chr(156) => 'S', chr(197).chr(157) => 's', |
| 380 | | chr(197).chr(158) => 'S', chr(197).chr(159) => 's', |
| 381 | | chr(197).chr(160) => 'S', chr(197).chr(161) => 's', |
| 382 | | chr(197).chr(162) => 'T', chr(197).chr(163) => 't', |
| 383 | | chr(197).chr(164) => 'T', chr(197).chr(165) => 't', |
| 384 | | chr(197).chr(166) => 'T', chr(197).chr(167) => 't', |
| 385 | | chr(197).chr(168) => 'U', chr(197).chr(169) => 'u', |
| 386 | | chr(197).chr(170) => 'U', chr(197).chr(171) => 'u', |
| 387 | | chr(197).chr(172) => 'U', chr(197).chr(173) => 'u', |
| 388 | | chr(197).chr(174) => 'U', chr(197).chr(175) => 'u', |
| 389 | | chr(197).chr(176) => 'U', chr(197).chr(177) => 'u', |
| 390 | | chr(197).chr(178) => 'U', chr(197).chr(179) => 'u', |
| 391 | | chr(197).chr(180) => 'W', chr(197).chr(181) => 'w', |
| 392 | | chr(197).chr(182) => 'Y', chr(197).chr(183) => 'y', |
| 393 | | chr(197).chr(184) => 'Y', chr(197).chr(185) => 'Z', |
| 394 | | chr(197).chr(186) => 'z', chr(197).chr(187) => 'Z', |
| 395 | | chr(197).chr(188) => 'z', chr(197).chr(189) => 'Z', |
| 396 | | chr(197).chr(190) => 'z', chr(197).chr(191) => 's', |
| 397 | | // Euro Sign |
| 398 | | chr(226).chr(130).chr(172) => 'E', |
| 399 | | // GBP (Pound) Sign |
| 400 | | chr(194).chr(163) => '' ); |
| 401 | | |
| | 294 | // Decompositions for Latin-1 Supplement |
| | 295 | chr(195).chr(128) => 'A', chr(195).chr(129) => 'A', |
| | 296 | chr(195).chr(130) => 'A', chr(195).chr(131) => 'A', |
| | 297 | chr(195).chr(132) => 'A', chr(195).chr(133) => 'A', |
| | 298 | chr(195).chr(135) => 'C', chr(195).chr(136) => 'E', |
| | 299 | chr(195).chr(137) => 'E', chr(195).chr(138) => 'E', |
| | 300 | chr(195).chr(139) => 'E', chr(195).chr(140) => 'I', |
| | 301 | chr(195).chr(141) => 'I', chr(195).chr(142) => 'I', |
| | 302 | chr(195).chr(143) => 'I', chr(195).chr(145) => 'N', |
| | 303 | chr(195).chr(146) => 'O', chr(195).chr(147) => 'O', |
| | 304 | chr(195).chr(148) => 'O', chr(195).chr(149) => 'O', |
| | 305 | chr(195).chr(150) => 'O', chr(195).chr(153) => 'U', |
| | 306 | chr(195).chr(154) => 'U', chr(195).chr(155) => 'U', |
| | 307 | chr(195).chr(156) => 'U', chr(195).chr(157) => 'Y', |
| | 308 | chr(195).chr(159) => 's', chr(195).chr(160) => 'a', |
| | 309 | chr(195).chr(161) => 'a', chr(195).chr(162) => 'a', |
| | 310 | chr(195).chr(163) => 'a', chr(195).chr(164) => 'a', |
| | 311 | chr(195).chr(165) => 'a', chr(195).chr(167) => 'c', |
| | 312 | chr(195).chr(168) => 'e', chr(195).chr(169) => 'e', |
| | 313 | chr(195).chr(170) => 'e', chr(195).chr(171) => 'e', |
| | 314 | chr(195).chr(172) => 'i', chr(195).chr(173) => 'i', |
| | 315 | chr(195).chr(174) => 'i', chr(195).chr(175) => 'i', |
| | 316 | chr(195).chr(177) => 'n', chr(195).chr(178) => 'o', |
| | 317 | chr(195).chr(179) => 'o', chr(195).chr(180) => 'o', |
| | 318 | chr(195).chr(181) => 'o', chr(195).chr(182) => 'o', |
| | 319 | chr(195).chr(182) => 'o', chr(195).chr(185) => 'u', |
| | 320 | chr(195).chr(186) => 'u', chr(195).chr(187) => 'u', |
| | 321 | chr(195).chr(188) => 'u', chr(195).chr(189) => 'y', |
| | 322 | chr(195).chr(191) => 'y', |
| | 323 | // Decompositions for Latin Extended-A |
| | 324 | chr(196).chr(128) => 'A', chr(196).chr(129) => 'a', |
| | 325 | chr(196).chr(130) => 'A', chr(196).chr(131) => 'a', |
| | 326 | chr(196).chr(132) => 'A', chr(196).chr(133) => 'a', |
| | 327 | chr(196).chr(134) => 'C', chr(196).chr(135) => 'c', |
| | 328 | chr(196).chr(136) => 'C', chr(196).chr(137) => 'c', |
| | 329 | chr(196).chr(138) => 'C', chr(196).chr(139) => 'c', |
| | 330 | chr(196).chr(140) => 'C', chr(196).chr(141) => 'c', |
| | 331 | chr(196).chr(142) => 'D', chr(196).chr(143) => 'd', |
| | 332 | chr(196).chr(144) => 'D', chr(196).chr(145) => 'd', |
| | 333 | chr(196).chr(146) => 'E', chr(196).chr(147) => 'e', |
| | 334 | chr(196).chr(148) => 'E', chr(196).chr(149) => 'e', |
| | 335 | chr(196).chr(150) => 'E', chr(196).chr(151) => 'e', |
| | 336 | chr(196).chr(152) => 'E', chr(196).chr(153) => 'e', |
| | 337 | chr(196).chr(154) => 'E', chr(196).chr(155) => 'e', |
| | 338 | chr(196).chr(156) => 'G', chr(196).chr(157) => 'g', |
| | 339 | chr(196).chr(158) => 'G', chr(196).chr(159) => 'g', |
| | 340 | chr(196).chr(160) => 'G', chr(196).chr(161) => 'g', |
| | 341 | chr(196).chr(162) => 'G', chr(196).chr(163) => 'g', |
| | 342 | chr(196).chr(164) => 'H', chr(196).chr(165) => 'h', |
| | 343 | chr(196).chr(166) => 'H', chr(196).chr(167) => 'h', |
| | 344 | chr(196).chr(168) => 'I', chr(196).chr(169) => 'i', |
| | 345 | chr(196).chr(170) => 'I', chr(196).chr(171) => 'i', |
| | 346 | chr(196).chr(172) => 'I', chr(196).chr(173) => 'i', |
| | 347 | chr(196).chr(174) => 'I', chr(196).chr(175) => 'i', |
| | 348 | chr(196).chr(176) => 'I', chr(196).chr(177) => 'i', |
| | 349 | chr(196).chr(178) => 'IJ', chr(196).chr(179) => 'ij', |
| | 350 | chr(196).chr(180) => 'J', chr(196).chr(181) => 'j', |
| | 351 | chr(196).chr(182) => 'K', chr(196).chr(183) => 'k', |
| | 352 | chr(196).chr(184) => 'k', chr(196).chr(185) => 'L', |
| | 353 | chr(196).chr(186) => 'l', chr(196).chr(187) => 'L', |
| | 354 | chr(196).chr(188) => 'l', chr(196).chr(189) => 'L', |
| | 355 | chr(196).chr(190) => 'l', chr(196).chr(191) => 'L', |
| | 356 | chr(197).chr(128) => 'l', chr(197).chr(129) => 'L', |
| | 357 | chr(197).chr(130) => 'l', chr(197).chr(131) => 'N', |
| | 358 | chr(197).chr(132) => 'n', chr(197).chr(133) => 'N', |
| | 359 | chr(197).chr(134) => 'n', chr(197).chr(135) => 'N', |
| | 360 | chr(197).chr(136) => 'n', chr(197).chr(137) => 'N', |
| | 361 | chr(197).chr(138) => 'n', chr(197).chr(139) => 'N', |
| | 362 | chr(197).chr(140) => 'O', chr(197).chr(141) => 'o', |
| | 363 | chr(197).chr(142) => 'O', chr(197).chr(143) => 'o', |
| | 364 | chr(197).chr(144) => 'O', chr(197).chr(145) => 'o', |
| | 365 | chr(197).chr(146) => 'OE', chr(197).chr(147) => 'oe', |
| | 366 | chr(197).chr(148) => 'R', chr(197).chr(149) => 'r', |
| | 367 | chr(197).chr(150) => 'R', chr(197).chr(151) => 'r', |
| | 368 | chr(197).chr(152) => 'R', chr(197).chr(153) => 'r', |
| | 369 | chr(197).chr(154) => 'S', chr(197).chr(155) => 's', |
| | 370 | chr(197).chr(156) => 'S', chr(197).chr(157) => 's', |
| | 371 | chr(197).chr(158) => 'S', chr(197).chr(159) => 's', |
| | 372 | chr(197).chr(160) => 'S', chr(197).chr(161) => 's', |
| | 373 | chr(197).chr(162) => 'T', chr(197).chr(163) => 't', |
| | 374 | chr(197).chr(164) => 'T', chr(197).chr(165) => 't', |
| | 375 | chr(197).chr(166) => 'T', chr(197).chr(167) => 't', |
| | 376 | chr(197).chr(168) => 'U', chr(197).chr(169) => 'u', |
| | 377 | chr(197).chr(170) => 'U', chr(197).chr(171) => 'u', |
| | 378 | chr(197).chr(172) => 'U', chr(197).chr(173) => 'u', |
| | 379 | chr(197).chr(174) => 'U', chr(197).chr(175) => 'u', |
| | 380 | chr(197).chr(176) => 'U', chr(197).chr(177) => 'u', |
| | 381 | chr(197).chr(178) => 'U', chr(197).chr(179) => 'u', |
| | 382 | chr(197).chr(180) => 'W', chr(197).chr(181) => 'w', |
| | 383 | chr(197).chr(182) => 'Y', chr(197).chr(183) => 'y', |
| | 384 | chr(197).chr(184) => 'Y', chr(197).chr(185) => 'Z', |
| | 385 | chr(197).chr(186) => 'z', chr(197).chr(187) => 'Z', |
| | 386 | chr(197).chr(188) => 'z', chr(197).chr(189) => 'Z', |
| | 387 | chr(197).chr(190) => 'z', chr(197).chr(191) => 's', |
| | 388 | // Euro Sign |
| | 389 | chr(226).chr(130).chr(172) => 'E', |
| | 390 | // GBP (Pound) Sign |
| | 391 | chr(194).chr(163) => ''); |
| | 392 | |