在翻看TP源码时发现一个C函数,我对其做了一些注释。
原文地址:http://chenlanlong8810.blog.163.com/blog/static/113899578201275103718201/
在翻看TP源码时发现一个C函数,我对其做了注释,函数定义如下:// 获取配置值<br>
function C($name=null, $value=null) {<br>
//此方法是一个变量库,static变量每次都会保存下来<br>
static $_config = array();<br>
// 无参数时获取所有<br>
if (empty($name))<br>
return $_config;<br>
// 优先执行设置获取或赋值<br>
if (is_string($name)) {<br>
if (!strpos($name, '.')) {<br>
$name = strtolower($name);<br>
if (is_null($value))<br>
//若$value为不空表明是变量注册,为空表明是变量查找<br>
return isset($_config[$name]) ? $_config[$name] : null;<br>
$_config[$name] = $value;<br>
return;<br>
}<br>
// 二维数组设置和获取支持<br>
$name = explode('.', $name);<br>
$name[0] = strtolower($name[0]);<br>
if (is_null($value))<br>
return isset($_config[$name[0]][$name[1]]) ? $_config[$name[0]][$name[1]] : null;<br>
$_config[$name[0]][$name[1]] = $value;<br>
return;<br>
}<br>
// 批量设置<br>
if (is_array($name))<br>
//若$name为数组,则返回所有的配置变量<br>
return $_config = array_merge($_config, array_change_key_case($name));<br>
return null; // 避免非法参数<br>
}
注意$_config变量前有static修饰,所以$_config在内存中存在于静态数据段,只要TP程序还在运行,其值将一直存在。C()函数有两种用法,若只传一个参数,表示查找常量。若传两个参数,表示常量注册。
还有一点需要说明的是include()的返回值是什么呢?
include()的返回值一般情况下要包含的文件存在则返回true,不存在则返回false。但是,当要包含的文件中有return的时候include()的返回值是所return的值而不是true OR false。
C.zip
( 665 B 下载:24 次 )
AD:真正免费,域名+虚机+企业邮箱=0元

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

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

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
