PHP에서 전달하는 함수 매개변수에는 형식적 매개변수 전달(C 언어와 같은 프로그래밍 언어에서 차용)이 있습니다.
즉, 함수의 매개변수에 변수 값을 할당하는 것은 함수 매개변수에 대해 수행되는 모든 작업이 원래 변수와 관련이 없습니다.
//php function testX( $b ) { return $b-=2; } $a = 5 ; $c = testX($a); print_r($a);//5 print_r($c);//3
그리고 주소 전송(참조 전송)은 변수의 주소를 함수의 매개변수에 부여하는 것입니다. 함수에서 매개변수에 대해 수행되는 모든 연산은 변수에 대한 연산과 동일합니다.
//php function testS( &$b ) { return $b-=2; } $a = 5 ; $c = testX($a); print_r($a);//3 print_r($c);//3
PHP에서는 함수 매개변수와 변수가 모두 메모리 공간을 확보하지만 일반 매개변수 전달은 매개변수에 값을 할당하는 반면 참조 전달은 변수의 주소
를 매개변수에 저장합니다. 매개변수 공간의 위치.
특히 주목할 점은 php5부터 참조 전달 작성 방법이 변경되었다는 점입니다. 위 코드와 같이 PHP 작성 방식을 다른 프로그래밍 언어와 동일하게 변경합니다. 정의할 때는 &를 사용해야 하고 호출할 때는 &를 사용할 필요가 없습니다. 이전 작성 방법과 많이 다릅니다.
//php以前的写法 function &testS( &$b ) { return $b-=2; } $c = &testS($a);
장점:
이러한 글쓰기 변화는 개인적으로 PHP 언어의 고유성을 줄이고 다른 프로그래밍 언어의 쓰기 방법에 더 가까워지는 것이라고 생각합니다. 어떤 의미에서는 다른 프로그래밍 언어에 익숙한 프로그래머가 PHP를 더 빨리 마스터할 수 있게 해줍니다. 코드 읽기 및 논리적 이해의 관점에서 볼 때 함수 내의 변수에 대해 수행되는 모든 작업을 완전히 무시합니다. 코드 추상화에 더 적합합니다.
단점:
개발의 최전선에 있는 프로그래머에게 이것은 미친 변화라고 생각합니다. 특히 2차 개발을 하는 사람들에게는 더욱 그렇습니다. 2차 개발자는 이전 개발자를 기반으로 개발해야 합니다. 함수를 볼 때 &로 참조 함수를 구별하는 데 익숙합니다. 이 작성 방법이 없으면 모든 함수가 동일합니다. 값 참조 함수에 대한 호출이 포함되면 프로그래머는 내부로 들어가야 합니다. 코드 세부정보를 확인하는 기능입니다. 특히 프로그램에 오류가 있는 경우에는 더욱 그렇습니다. 값별 참조 기능으로 변수에 적용된 모든 변경 사항을 자세히 이해해야 합니다. 그리고 참조 함수를 호출하기 위해 &를 취소한다는 것은 프로그램에서 호출한 모든 함수를 확인해야 한다는 것을 의미하며(어떤 함수가 참조 함수인지 모르기 때문에) 작업 부하를 상상할 수 있습니다!
전역변수(global)도 있습니다. 이는 매개변수를 정의하는 직접적이고 빠른 방법입니다. 함수에서 사용할 매개변수를 전역 변수로 설정합니다. 이런 방식으로 함수 내부의 작업은 변수 자체를 직접 사용합니다.
짧은 프로그램에서 사용해도 문제는 없지만, 외부 파일 호출 시 매개변수를 정의하는 이상적인 방법은 아닙니다!
위 내용은 PHP 함수에 매개변수를 전달하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

PHP5.4版本新功能:如何使用callable类型提示参数接受可调用的函数或方法引言:PHP5.4版本引入了一项非常便利的新功能-可以使用callable类型提示参数来接受可调用的函数或方法。这个新功能使得函数和方法可以直接指定相应的可调用参数,而无需进行额外的检查和转换。在本文中,我们将介绍callable类型提示的使用方法,并提供一些代码示例,

产品参数是指产品属性的意思。比如服装参数有品牌、材质、型号、大小、风格、面料、适应人群和颜色等;食品参数有品牌、重量、材质、卫生许可证号、适应人群和颜色等;家电参数有品牌、尺寸、颜色、产地、适应电压、信号、接口和功率等。

i9-12900H是14核的处理器,使用的架构和工艺都是全新的,线程也很高,整体的工作都是很优秀的,一些参数都有提升特别的全面,是可以给用户们带来极佳体验的。i9-12900H参数评测大全评测:1、i9-12900H是14核的处理器,采用了q1架构以及24576kb的制程工艺,提升到了20个线程。2、最大的CPU频率是1.80!5.00ghz,整体主要取决于工作的负载。3、相比较价位来说还是特别合适的,性价比很不错,对于一些需要正常使用的伙伴来说非常的合适。i9-12900H参数评测大全性能跑分

双曲函数是使用双曲线而不是圆定义的,与普通三角函数相当。它从提供的弧度角返回双曲正弦函数中的比率参数。但要做相反的事,或者换句话说。如果我们想根据双曲正弦值计算角度,我们需要像双曲反正弦运算一样的反双曲三角运算。本课程将演示如何使用C++中的双曲反正弦(asinh)函数,使用双曲正弦值(以弧度为单位)计算角度。双曲反正弦运算遵循以下公式-$$\mathrm{sinh^{-1}x\:=\:In(x\:+\:\sqrt{x^2\:+\:1})},其中\:In\:是\:自然对数\:(log_e\:k)

在开发过程中,我们可能会遇到这样一个错误提示:PHPWarning:in_array()expectsparameter。这个错误提示会在使用in_array()函数时出现,有可能是因为函数的参数传递不正确所导致的。以下我们来看看这个错误提示的解决方法。首先,需要明确in_array()函数的作用:检查一个值是否在数组中存在。该函数的原型为:in_a

ML中的一个重要任务是模型选择,或者使用数据为给定任务找到最佳的模型或参数。这也称为调优。可以对单个的估计器(如LogisticRegression)进行调优,也可以对包括多种算法、特性化和其他步骤的整个pipeline进行调优。用户可以一次调优整个Pipeline,而不是分别调优 Pipeline 中的每个元素。ML中的一个重要任务是模型选择,或者使用数据为给定任务找到最佳的模型或参数。这也称为调优。可以对单个的Estimator(如LogisticRegression)进行调优,也

大型语言模型(LLM)虽然性能强劲,但动辄几百上千亿的参数量,对计算设备还是内存的需求量之大,都不是一般公司能承受得住的。量化(Quantization)是常见的压缩操作,通过降低模型权重的精度(如32bit降为8bit),牺牲一部分模型的性能来换取更快的推理速度,更少的内存需求。但对于超过1000亿参数量的LLM来说,现有的压缩方法都无法保持模型的准确率,也无法在硬件上高效地运行。最近,麻省理工学院和英伟达的研究人员联合提出了一个通用后训练的量化(GPQ, general-purpose po

必填参数缺失是指在进行某项操作或者调用某个函数时,必要的参数没有被提供或者没有被正确地传递。在编程中,函数通常会需要一些输入参数来完成特定的任务,必须在调用函数时被提供,如果这些必填参数没有被提供,系统就无法理解如何执行函数,因此会报错或者无法继续执行。必填参数缺失在编程中是一个常见的错误,解决这个问题的方法是检查调用函数的代码,确保所有必填参数都被正确地提供等等。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

Dreamweaver Mac版
시각적 웹 개발 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는
