이 글은 thinkphp에서 AOP 관점 프로그래밍을 사용하여 데이터를 빠르게 검증하는 방법을 소개합니다. 필요한 친구들이 참고할 수 있기를 바랍니다.
1) 먼저 디렉토리 구조를 확인하세요
2) 일반적인 작성 방법을 사용하여 검증을 구성합니다
독립적인 검증기나 데이터를 하나씩 사용하는 것과 비교하면 여기에는 주로 네 단계가 있습니다. 대부분의 코드는 최적화되어 있지만 사용하면 여러 검증이나 여러 모듈을 사용하면 이 코드 문자열을 작성할 때 반복적인 중복이 발생한다는 것을 알게 됩니다
질문: 코드를 한 줄로 압축하는 방법은 무엇인가요?
AOP: 소스코드를 수정하지 않고 프로그램에 동적으로 기능을 추가하는 기술. AOP는 실제로 GoF 디자인 패턴의 연속입니다. 디자인 패턴은 호출자와 호출 수신자 간의 분리를 끊임없이 추구하여 코드의 유연성과 확장성을 향상시키는 것입니다.AOP는 OOP이지만 이름이 매우 비슷하지만 서로 다른 분야에 대한 두 가지 디자인 아이디어입니다. OOP(객체 지향 프로그래밍)는 비즈니스 처리 프로세스의 엔터티와 해당 속성 및 동작을 추상적으로 캡슐화하여 논리 단위를 보다 명확하고 효율적으로 분할합니다.
BaseValidate.php
<?php namespace app\common\validate; use app\common\controller\Base; use think\Request; use think\Validate; class BaseValidate extends Validate { /** * 基础类控制器 * @param null|array $data * @return bool */ public function goCheck($data = null) { # 当 data 不存在的时候去自动校验获取到的参数 if( is_null($data) ) { # 获取待验证的参数 $data = Request::instance()->param(); } # 进行验证 if( !$this->check($data) ) { (new Base())->ajaxjson(Base::error, $this->getError()); # 抛出的自定义异常 } return true; }를 상속하여 BaseValidate 파일을 생성했습니다.최적화된 code 이것은 많은 컨트롤러에서 사용해야 하기 때문에 즉시 훨씬 더 편안해지며 많은 코드가 절약됩니다.Optimization 2예를 들어 baseValidate의 코드 중 하나는 문자열 코드입니다. 전달된 모든 데이터를 검증하기 위해 작성한 is_null입니다. 모든 데이터를 검증해야 할 때 이렇게만 작성하면 됩니다 데이터 검증도 가능하지만 의심이 들 수 있습니다. 데이터 데이터를 얻지 못했기 때문에 컨트롤러에서 다시 가져와야 합니다. 이는 바람직하지 않기 때문에 이렇게 하기로 결정했습니다
PHP 비디오 튜토리얼 칼럼을 살펴보세요!
위 내용은 thinkphp에서 AOP 관점 프로그래밍을 이용하여 데이터를 빠르게 검증하는 방법 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!