การค้นหาข้อผิดพลาดในโค้ดที่มีเงื่อนไข PHP

ในโจทย์ต่อไปนี้ โปรแกรมเมอร์คนหนึ่งเขียนโค้ดไว้ และอาจจะทำผิดพลาดไว้ในโค้ด คุณต้องตรวจสอบว่า โค้ดทำตามที่อธิบายไว้หรือไม่ ถ้าโค้ด ทำงานไม่ถูกต้อง คุณต้องแก้ไขข้อผิดพลาด

Задание 1

โค้ดควรตรวจสอบผลรวมของตัวเลข:

php<?php
  $num1 = '1';
  $num2 = '2';
  
  if ($num1 + $num2 === '3') {
    echo '+++'; // ควรจะแสดงข้อความนี้
  } else {
    echo '---';
  }
?>
Задание 2

โค้ดควรตรวจสอบตัวเลขตัวแรก:

php<?php
  $num = 123;
  
  if ($num[0] === 1) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 3

โค้ดควรตรวจสอบตัวเลขตัวแรก:

php<?php
  $num = 123;
  
  if ((string) $num[0] === 1) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 4

โค้ดควรตรวจสอบตัวเลขตัวแรก:

php<?php
  $num = 123;
  $str = (string) $num;
  
  if ($str[0] === 1) {
    echo '+++';
  } else {
    echo '---';
  }
Задание 5

โค้ดควรตรวจสอบว่าในตัวเลข มีสองหลักพอดี:

php<?php
  $num = 12;
  
  if (strlen($num) === 2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 6

โค้ดควรตรวจสอบตัวเลขตัวแรก:

php<?php
  $num = 123;
  $str = (string) $num;
  
  if ($num[0] === '1') {
    echo '+++';
  } else {
    echo '---';
  }
Задание 7

โค้ดควรตรวจสอบว่าในตัวเลข มีสองหลักพอดี:

php<?php
  $num = 12;
  $str = (int) $num;
  
  if (strlen($str) === 2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 8

โค้ดที่นำเสนอนี้ทำงานไม่เหมือน ที่ผู้เขียนตั้งใจไว้:

php<?php
  $num = 1;
  
  if ($num !== 1 or $num !== 2) {
    echo '+++';
  } else {
    echo '---'; // ควรจะแสดงข้อความนี้
  }
?>

อธิบายเหตุผล

Задание 9

โค้ดที่นำเสนอนี้ทำงานไม่เหมือน ที่ผู้เขียนตั้งใจไว้:

php<?php
  $var1 = '1';
  $var2 = '2';
  
  if ($var1 + 1 === $var2) {
    echo '+++'; // ควรจะทำงานส่วนนี้
  } else {
    echo '---';
  }
?>

อธิบายเหตุผล