SalahEddine Makkaoui Ответов: 2

Когда я запускаю этот код, я получаю то, чего не понимаю


<?php
class Cars {
	static $wheel_count = 4;
	static $door_count = 2;

	static function car_detail(){
		return self::$wheel_count;
		return self::$door_count;
	}
}
class Trucks extends Cars {

	static function display(){

		echo parent::car_detail();
	}
}

Trucks::display();

 ?>


Что я уже пробовал:

Здравствуйте, у меня есть вопрос пожалуйста, я новичок на PHP и когда я запускаю этот код у меня есть в результате 4.Почему у меня нет 4 и 2, я запустил функцию display, чтобы получить wheel_count и door_count, так почему же у меня есть только wheel_count 4 ?

2 Ответов

Рейтинг:
18

Richard MacCutchan

static function car_detail(){
    return self::$wheel_count;
    return self::$door_count;
}

Первый return оператор-это тот, который выходит из функции и возвращает значение 4. Пожалуйста, идите к PHP: PHP Manual - руководство пользователя[^] и изучать язык.


Afzaal Ahmad Zeeshan

5ед.

SalahEddine Makkaoui

Так что если я понимаю мы можем вернуть только одно значение спасибо

Richard MacCutchan

В общем, да. В вашем коде второй оператор return никогда не может быть достигнут.

Рейтинг:
1

alin1

Второе возвращение (return self::$door_count;) никогда не достигается, потому что первый из них является точкой выхода.


Richard MacCutchan

Именно то, что я сказал вчера.