Как определить глобальные функции в PHP
Как определить глобальную функцию, которая будет доступна с любой страницы?
6 ответов
В включить.на PHP:
function myGlobalFunction() {
    // do someting
}
затем на каждой странице вы хотите использовать его:
include 'include.php';
myGlobalFunction();
если вы хотите, чтобы ваша функция всегда была доступна, не включая ее, сделайте следующее:
создайте свою функцию в файле php.
- 
в вашем php.ini поиск опции
auto_prepend_fileи добавьте свой php-файл в эту строку, например:auto_prepend_file = "/path/to/my_superglobal_function.php" 
или если вы пишете его с не абсолютным путем, например:
auto_prepend_file = "my_superglobal_function.php" 
это будет выглядеть в вашем include_path на php.ini в найти файл.
вы можете объявить функцию внутри функции, будьте осторожны, чтобы вызвать внешнюю функцию только один раз, или вы получите ошибку.
class MyClass {
  function declareGlobalsFn () {
    // functions declared inside a function have global scope
    function globalfn1() {echo "fn1";}
    function globalfn2() {echo "fn2";}
  }
}
$ob = new MyClass();
$ob->declareGlobalsFn();
globalfn1(); // fn1
globalfn2(); // fn2
затем на каждой странице вы хотите использовать его:
include 'include.php'; myGlobalFunction();
-
поместите его в include, затем включите его.
этой технически может быть неправильно, в зависимости от контекста.
" страница "может восприниматься как"файл", например "вы должны включить файл функции в каждый файл, который вы хотите использовать функцию".
как только функция определена в вашей программе, к нему можно получить доступ из любого места, двигаясь вперед, пока программа не завершит выполнение.
скажите, что у вас есть это:
.в PHP:
<?php
function echo_1() {
  echo 1;
}
echo_1();
require 'boot.php';
boot.в PHP
<?php
include_once 'page.php';
echo_1();
echo_9342949();
расширить на luarwo это, вы можете объявить функцию в конструкторе класса. Это может сделать ваш класс вроде библиотеки функций, где функции доступны с любой страницы, где вы создаете экземпляр класса.
Песочница\MyGameLib
<?php
namespace Sandbox;
class MyGameLib {
    public function __construct() {
        if (!function_exists('loveGame')) {
            function loveGame($game) {
                print "The game $game is awesome";
            }
        }
    }
}
качели
<?php
namespace Seesaw;
use Sandbox\MyGameLib;
$m = new MyGameLib();
loveGame('Tempest');
игра Tempest является удивительным