xor operatør:
Xor-operatøren bruges i den boolske operation, og den bitvise operation vises i den følgende tabel.
Betingelse-1 / Operand-1 | Betingelse-1 / Operand-1 | Produktion |
---|---|---|
Sandt eller 1 | Sandt eller 1 | Falsk eller 0 |
Sandt eller 1 | Falsk eller 1 | Sandt eller 1 |
Falsk eller 0 | Sandt eller 1 | Sandt eller 1 |
Falsk eller 0 | Falsk eller 0 | Falsk eller 0 |
Brug af XOR til boolsk drift:
XOR-operatørens forskellige anvendelser forklares i dette afsnit af denne vejledning ved hjælp af flere eksempler.
Eksempel -1: Brug af XOR i boolske betingelser for strengdata
Følgende eksempel viser brugen af xor-operatoren til at kontrollere den boolske logik på strengdata. $ kunde_id og $ client_id variabler initialiseres med strengdata her. Den første hvis tilstand med xor operatøren vil kontrollere de to første tegn på $ kunde_id er 'AL' eller 'CA'. Xor operatøren vil vende tilbage sandt for dette hvis betingelse, fordi en betingelse returnerer sand. Sekundet hvis tilstand med xor operatøren vil kontrollere de to første tegn på $ kunde_id er 'AZ' eller 'GA'. Xor operatøren returnerer falsk for dette hvis betingelse, fordi begge betingelser returnerer falske. Den tredje hvis tilstand med xor operatøren vil kontrollere de to første $ kunde_id er 'CA' eller $ client_id er 'HEJ'. Xor operatøren returnerer falsk for dette hvis betingelse, fordi begge betingelser bliver sande.
// Initialiser variablerne$ customer_id = 'CA-756345';
$ client_id = 'HI-98765';
// XOR returnerer true, hvis kun en betingelse returnerer true
hvis (substr ($ customer_id, 0,2) == 'AL' xor substr ($ customer_id, 0,2) == 'CA')
// Find ud af, hvilken betingelse der er sandt
hvis (substr ($ customer_id, 0,2) == 'AL')
ekko "Kunden ($ customer_id) bor i Alabama
";
andet
ekko "Kunden ($ customer_id) bor i Californien
";
// XOR returnerer falsk, hvis begge betingelser returnerer falske
hvis (substr ($ customer_id, 0,2) == 'AZ' xor substr ($ customer_id, 0,2) == 'GA')
ekko "Kunden ($ customer_id) bor i Arizona eller Georgien
";
andet
ekko "Kunden ($ customer_id) ikke bor i Arizona heller ikke bor i Georgien
";
// XOR returnerer falsk, hvis begge betingelser vender tilbage
hvis (substr ($ customer_id, 0,2) == 'CA' xor substr ($ client_id, 0,2) == 'HI')
hvis (substr ($ customer_id, 0,2) == 'CA')
ekko "Kunden ($ customer_id) bor i Californien
";
andet
ekko "Kunden ($ customer_id) bor i Hawaii
";
andet
// Find ud af tilstandene hos kunde og klient
hvis (substr ($ customer_id, 0,2) == 'CA' og substr ($ client_id, 0,2) == 'HI')
ekko "Kunden ($ customer_id) bor i Californien
";
ekko "Klienten ($ client_id) bor i Hawaii
";
?>
Produktion:
Følgende output vises efter kørsel af scriptet.
Eksempel 2: Brug af XOR i boolske forhold med numeriske data
Følgende eksempel viser brugen af xor-operatoren til at kontrollere den boolske logik på numeriske data. To numeriske værdier tildeles til $ num1 og $ num2 variabler. Den første hvis tilstand med xor operatøren vil kontrollere $ num1 er mindre end 3 eller større end 9. xor operatøren vil vende tilbage sandt for dette hvis tilstand fordi $ num1 er større end 9. Sekundet hvis tilstand med xor operatøren vil kontrollere $ num1 er mindre end eller lig med 10 eller $ num2 er større end eller lig med 7. xor operatøren returnerer falsk for dette hvis tilstand, fordi begge betingelser er sande. Den tredje hvis tilstand med xor operatøren vil kontrollere $ num1 er større end 19 eller $ num2 er lig med 17. xor operatøren returnerer falsk for dette hvis tilstand, fordi begge betingelser er falske.
// Initialiser talværdierne$ num1 = 10;
$ num2 = 7;
// Gendanner sandt, hvis en betingelse er sand
hvis ($ num1 9)
ekko "Nummeret er $ num1.
";
// Returnerer sandt, hvis cobditions er sande
hvis ($ num1 = 7)
hvis ($ num1 <= 10)
ekko "Betingelsen gælder for $ num1.
";
andet
ekko "Betingelsen gælder for $ num2.
";
andet
hvis ($ num1 = 7)
ekko "Begge betingelser er sande.
";
andet
ekko "Begge betingelser er falske.
";
// Returnerer falsk, hvis begge betingelser er falske
hvis ($ num1> 19 xor $ num2 == 17)
ekko "En af betingelsen er sand.
";
andet
hvis(!($ num1 8))
ekko "Begge betingelser er falske.
";
andet
ekko "Begge betingelser er sande.
";
?>
Produktion:
Følgende output vises efter kørsel af scriptet.
Eksempel 3: Brug af XOR i bitvis operation
Følgende eksempel viser brugen af xor-operatoren til bitvis betjening. To binære tal initialiseres til variablerne $ number1 og $ number2. '^' symbol bruges til at udføre bitvis xor-operation på binære tal. Talværdien udskrives som decimaltal for ethvert script. decbin () funktion bruges i scriptet til at udskrive output i binært format.
// To binært tal er defineret$ nummer1 = 0b111;
$ nummer2 = 0b010;
// Brug XOR til bitvis betjening
$ resultat = decbin ($ nummer1 ^ $ nummer2);
// Udskriv resultatet i binær
ekko "Resultatet af bitvis operation i binær er: $ resultat";
?>
Produktion:
Følgende output vises efter kørsel af scriptet.
Konklusion:
Xor-operatørens anvendelser mellem de boolske forhold og de binære tal er forklaret ved hjælp af flere eksempler i denne vejledning. Læserne vil forstå xor-operatørens logik og anvende den på den betingede erklæring og bitvise operation efter at have læst denne vejledning.