>  기사  >  백엔드 개발  >  사용자 정의 구성 사용 및 ThinkPHP3.2 프레임워크 로딩 정보

사용자 정의 구성 사용 및 ThinkPHP3.2 프레임워크 로딩 정보

不言
不言원래의
2018-06-14 15:26:021970검색

이 글에서는 ThinkPHP3.2 프레임워크의 커스텀 구성과 로딩 사용법을 주로 소개하고, 미리 정의된 배열 데이터를 필요로 하는 친구들이 참고할 수 있도록 커스텀 구성을 사용하여 ThinkPHP3.2 프레임워크의 관련 운영 기술을 분석합니다. 이 기사의 예제

ThinkPHP3.2 프레임워크의 사용자 정의 구성 및 로딩 사용법을 설명합니다. 다음과 같이 참조용으로 모든 사람과 공유하세요.

때때로 드롭다운 메뉴와 같이 각 숫자에 해당하는 실제 콘텐츠를 정의하는 몇 가지 규칙이 있습니다.

<select name="reasonAndType" id="">
  <option value="1">查询物流</option>
  <option value="2">办理退货</option>
  <option value="3">咨询退货</option>
  <option value="4">咨询佣金</option>
  <option value="5">咨询规则</option>
  <option value="0">其他</option>
</select>

←실제 효과

←데이터 인벤토리의 효과

←표시될 때.

이 예에서는 실제로 한자가 표시되고 실제 값은 숫자입니다. 데이터에 저장할 때 숫자도 저장하고 데이터베이스에서 가져올 때도 숫자를 가져옵니다.

따라서 해당 숫자에 해당하는 한자를 정의하고 해당 정의의 실제 의미가 무엇인지 정의하는 사전과 유사한 것이 필요합니다.

이 효과는 데이터베이스를 사용하여 얻을 수 있습니다. , 하지만 데이터베이스의 작업 오버헤드가 너무 높기 때문에 사용하지 않습니다.

일반적인 PHP 환경이라면 별도의 파일에 규칙을 저장할 수 있으며 내용은 배열입니다:

type. PHP

$type = array(
&#39;1&#39; => &#39;查询物流&#39;,
&#39;2&#39; => &#39;办理退货&#39;,
&#39;3&#39; => &#39;咨询退货&#39;,
&#39;4&#39; => &#39;咨询佣金&#39;,
&#39;5&#39; => &#39;咨询规则&#39;,
&#39;0&#39; => &#39;其他&#39;
);

위의 코드와 마찬가지로 정의한 후 파일로 저장하고, 이 규칙을 호출해야 할 경우에는 include 또는 require를 한 다음 $type 변수를 사용하여 찾으면 됩니다. 예:

require_once(&#39;type.php&#39;);
echo $type[1]; //输出&#39;查询物流&#39;
foreach($type as $k => $v){ //直接打印出最上面的下拉菜单代码,
echo "<option value = &#39;{$k}&#39; >{$v}</option>";
}

ThinkPHP를 사용하는 경우 파일을 가져오려면 절대 경로만 사용할 수 있습니다. 단축키는 __APP__ 또는 __ROOT__를 사용하세요. include 및 require 항목이 작동하지 않습니다. U() 체인 구축 기능을 시도하지 않았지만 가능합니다. __APP__或者__ROOT__快捷入口是不行的,U()造链函数我没试,应该是可以实现的。

还有一种实现方式,也是我在这里推荐的,就是直接把这套规则定义为这个网站的配置文件,当我们用的时候,用C()加载配置函数把这个数组加载出来赋给一个变量就好了。

上代码了:

把你定义的规则放到conf下,这是私有配置文件,只有Home这个入口的才生效,也可以放到公共配置文件下,细节可以去查手册。

return array(
&#39;REASON_AND_TYPE&#39; => array(
&#39;1&#39; => &#39;查询物流&#39;,
&#39;2&#39; => &#39;办理退货&#39;,
&#39;3&#39; => &#39;咨询退货&#39;,
&#39;4&#39; => &#39;咨询佣金&#39;,
&#39;5&#39; => &#39;咨询规则&#39;,
&#39;0&#39; => &#39;其他&#39;
)
);

注意加上return;

注意,格式,return一个数组,键名是大写的(为了好看),键值是你要定义的东西,在这里我们定义的是一个数组。

修改config.php文件

<?php
return array(
//&#39;配置项&#39;=>&#39;配置值&#39;
&#39;DB_TYPE&#39; => &#39;mysqli&#39;, // 数据库类型
&#39;DB_HOST&#39; => &#39;localhost&#39;, // 服务器地址
&#39;DB_NAME&#39; => &#39;kefu&#39;, // 数据库名
&#39;DB_USER&#39; => &#39;root&#39;, // 用户名
&#39;DB_PWD&#39; => &#39;root&#39;, // 密码
&#39;DB_PORT&#39; => &#39;&#39;, // 端口
&#39;DB_PREFIX&#39; => &#39;&#39;, // 数据库表前缀
&#39;LOAD_EXT_CONFIG&#39; => &#39;reasonAndType&#39;, //这是我们自己添加的,LOAD_EXT_CONFIG键名固定,键值是你的php文件的文件名,那个数组名字在这里就不用管了
);

这就算配置好了。

下面讲调用这套规则:

$reasonAndTypeX = C(&#39;REASON_AND_TYPE&#39;);
//直接用数组名字就可以了,C()函数能加载配置里的键名所代表的值,赋给变量

注意,C()

여기서 추천하는 또 다른 구현 방법은 이 규칙 집합을 이 웹사이트의 구성 파일로 직접 정의하는 것입니다. 이를 사용할 때 C()를 사용하여 구성을 로드합니다. 이 배열을 로드하고 변수에 할당하면 됩니다.

코드가 업로드되었습니다.

설정된 규칙은 비공개 구성 파일입니다. 자세한 내용은 매뉴얼을 확인하세요. .

var_dump($reasonAndTypeX);

return이 추가되었습니다.

형식은 배열을 반환하고 키 이름은 대문자이며(보기 좋게) 키는 값은 정의하려는 것입니다. 여기서 정의하는 것은 배열입니다. config.php 파일을 수정하세요

array(
&#39;1&#39; => &#39;查询物流&#39;,
&#39;2&#39; => &#39;办理退货&#39;,
&#39;3&#39; => &#39;咨询退货&#39;,
&#39;4&#39; => &#39;咨询佣金&#39;,
&#39;5&#39; => &#39;咨询规则&#39;,
&#39;0&#39; => &#39;其他&#39;
);

이제 구성되었습니다.

다음은 이 규칙 집합을 호출하는 방법입니다.

// 如果REASON_AND_TYPE尚未设置的话,则返回default_config字符串
C(&#39;my_config&#39;,null,&#39;default_config&#39;);

C() 함수의 값은 ReasonAndType 파일의 값입니다.
rrreee

이 배열의 내용을 입력합니다

rrreee

이렇게 하면 사용자 정의 구성 파일의 설정 및 로드가 완료됩니다. '

REASON_AND_TYPE🎜'이 구성되지 않은 경우 null 값이 반환됩니다. 🎜🎜물론 기본값을 설정할 수도 있으며 코드는 다음과 같습니다. 🎜🎜🎜rrreee🎜🎜🎜🎜🎜위는 다음과 같습니다. 이 글의 전체 내용이 여러분에게 도움이 되기를 바랍니다. 더 많은 관련 내용을 보려면 PHP 중국어 웹사이트를 주목해 주세요! 🎜🎜관련 권장 사항: 🎜🎜🎜thinkPHP 프레임워크가 다중 테이블 쿼리를 구현하는 방법🎜🎜🎜🎜🎜thinkPHP 프레임워크의 동적 구성 사용 분석🎜🎜🎜🎜🎜🎜🎜🎜🎜

위 내용은 사용자 정의 구성 사용 및 ThinkPHP3.2 프레임워크 로딩 정보의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.