Чар, уменьшающий php [дубликаты]

1

Я уже знаю, что следующий код работает хорошо

<?php
$a = "A";
$a++;
$a++;
echo $a; // "C"

Но как я могу вернуться с C на A как $a--; похоже, не работает? ,

  • 0
    Что ты получил обратно?
  • 0
    Обратите внимание, что такое увеличение и уменьшение имеет ограниченное использование, поскольку оно имеет смысл только для ASCII и ISO, поэтому кодируется 7-битный и 8-битный текст. Это приводит к проблемам с кодом UTF (Unicode), который в настоящее время является большинством всех текстов.
Теги:

2 ответа

1

Вы не можете уменьшать символы в PHP. ИМО, вам также не следует увеличивать символы, но это только я. Что вы можете сделать, так это:

$a = chr(ord($a) - 1);

ord возвращает int (значение ASCII первого символа в $a), которое chr затем преобразует обратно в строку.

Чтобы показать, что вы знаете, что вы увеличиваете характер, я также советую вам изменить $a++; к более самодокументирующимся:

$a = chr(ord($a)+1);
1

Используйте chr() и ord():

$a = ord("A");
$a++;
$a++;
echo chr($a); // "C"
$a--;
echo chr($a); // "B"
$a--;
echo chr($a); // "A"

Ещё вопросы

Сообщество Overcoder
Наверх
Меню