laravel5.8(四)引入自定义常量文件及公共函数文件

30 篇文章 1 订阅
27 篇文章 1 订阅

开发过程中,我们一般会用到一些不会改变,或者改变不是很频繁的值,这样的值我们一般将他们定义成常量。

比如网站根目录,或者分页数,或者域名等等。

那我们如何在laravel5.8中引入自定义的常量文件及公共的函数文件呢。

大概有两种方式:

1:框架目录下引入(不推荐)

在框架目录vendor下新建常量文件const.php,以及公共函数文件function.php

在autoload.php文件中引入。

这种方法是可以的,但是不推荐,框架目录下最好都是框架自己的那些文件,正常来说,框架的文件我们在开发过程中,git是不会进行托管的。

2:在app目录下引入

在bootstrap目录下新建常量文件const.php,以及公共函数文件function.php

在app.php文件中引入:

// 引入常量文件
require __DIR__ . '/const.php';
// 公共函数
require __DIR__ . '/function.php';
 

只有在app.php引入了,才会全局加载生效。

Const.php

<?php
    // 预加载文件目录
    define('STUDENT_DIR', '/xxx/xxxx/xxx/xxx/xxx/xxx/');
    // 域名
    define('DOMAIN','http://xxx.xxxx.net/');
    // 网站根目录
    define('WEB_PATH', '/xx/xx/xxxx/xxx/xxx/');

function.php

<?php
// 获取客户端ip
function get_side_ip($type = 0) {
    $type =  $type ? 1 : 0;
    static $ip = NULL;
    if ($ip !== NULL) return $ip[$type];
    if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        $arr = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
        $pos = array_search('unknown',$arr);
        if(false !== $pos) unset($arr[$pos]);
        $ip = trim($arr[0]);
    }elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
        $ip = $_SERVER['HTTP_CLIENT_IP'];
    }elseif (isset($_SERVER['REMOTE_ADDR'])) {
        $ip = $_SERVER['REMOTE_ADDR'];
    }
    // IP地址合法验证
    $long = ip2long($ip);
    $ip = $long ? array($ip, $long) : array('0.0.0.0', 0);
    return $ip[$type];
}
  
//处理方法
function rmdirr($dirname) {
    if (!file_exists($dirname)) {
        return false;
    }
    if (is_file($dirname) || is_link($dirname)) {
        return unlink($dirname);
    }
    $dir = dir($dirname);
    if ($dir) {
        while (false !== $entry = $dir->read()) {
            if ($entry == '.' || $entry == '..') {
                continue;
            }
            //递归
            rmdirr($dirname . DIRECTORY_SEPARATOR . $entry);
        }
    }
}

调用的话,直接使用名字调用就可以了。

例如:在某模块下的某控制器下的某方法

Public function xxx()
{
echo DOMAIN;
$ip = get_side_ip();
echo $ip;
  
}
 

有好的建议,请在下方输入你的评论。

原文链接:https://guanchao.site/index/article/articledetail.html?artid=Xof51Oi1G

欢迎访问我的小程序:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值