Comment renvoyer des informations au milieu d'appels en chaîne PHP
学习ing
学习ing 2017-07-05 10:46:11
0
3
1058

Comment obtenir des informations d'erreur en cas d'erreur dans l'appel de la chaîne PHP

Le message d'erreur ici n'est pas une simple chaîne. Par exemple, pendant le processus d'appel en chaîne, une certaine fonction peut devoir renvoyer un tableau lorsqu'elle ne remplit pas une certaine condition et signaler directement une erreur, indiquant que le tableau ne peut pas appeler. la fonction suivante, mais comment peut-on le faire ? Et si nous ne continuons pas à l'appeler si une certaine fonction au milieu revient ?

学习ing
学习ing

répondre à tous(3)
世界只因有你

essayez d'attraper

習慣沉默

Est-ce comme ça ci-dessous ?

<?php

class Demo
{
    protected $result;
    protected $error = false;
    
    function funcA() 
    {
        if (! $this->error) {
            //do xxx
        }
        
        return $this;
    }
    
    function funcB() 
    {
        if (! $this->error) {
            //do xxx
            //模拟发生错误
            $this->error = true;
            $this->result = ['Ops!', 'Something bad Happened!'];
        }
        
        return $this;
    }
    
    function funcC() 
    {
        if (! $this->error) {
            //do xxx
        }
        
        return $this;
    }
    
    function GetResult() {
        return [$this->result, $this->error];
    }
}

$demo = new Demo();

list($result, $hasError) = $demo->funcA()->funcB()->funcC()->GetResult();

var_dump($result, $hasError);

PS : j'ai l'impression d'avoir écrit golang

Jouez en ligne https://glot.io/snippets/ereygerdv3

小葫芦

throw new Exception('error');

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal