Почему в относительных ссылках я всегда должен использовать синтаксис base_url+ссылка в CodeIgniter?
Например:
<a href="<?php echo base_url()?>link22.php">
вместо
<a href="/link22.php'>
когда я объявил <base href="<?php echo base_url()?>">
в голове HTML?
Каковы преимущества?
Хороший вопрос.
Короткие слова (используется ниже)
CI — Codeigniter
base_url()
??base_url()
это функция, которая определяет пункт назначения вашего проекта, который действует как $_SERVER['REQUEST_URI']
в php. Это будет знать, где содержится ваш фактический проект.
base_url()
??Path - application/config/
File name - config.php
base_url()
функционировать?Нет, ты не можешь В CI у них есть некоторые библиотеки а также помощник которые помогают нам использовать CI более дружественным. Так чтобы base_url()
есть помощник вызов файла url
.
Как его загрузить ??
Path - application/config/
File name - autoload.php
есть такая функция $autoload['helper'] = array();
, Так что добавьте к этому помощника
$autoload['helper'] = array('url');
base_url()
??Да. Есть два метода, которые вы можете определить base_url()
Способ 01
$config['base_url'] = '';
Способ 02
$config['base_url'] = 'http://localhost/foldername/';
Разница между Метод 01 (М1) а также Метод 02 (М2)
M1 — Когда мы держим пустым base_url
это автоматически определит объем вашего проекта. Поэтому, когда вы не можете найти путь или сомневаетесь, это рекомендуется.
M2 — Там нет никакой разницы между M1, здесь вы знаете путь. Так что можете определить это.
Какой метод хорош / рекомендован?
Как мое предложение Способ 01 самый лучший
echo base_url()
вместо просто base_url()
base_url()
переменная, которая предварительно определенные +(Codeigniter + User) в CI Framework, который мы можем использовать весь проект. Таким образом, чтобы показать содержимое переменной в php
, мы используем echo
, В этом также заключается и та же теория.
<a href="/link22.php'>
не будет работатьCodeigniter Framework построить с MVC Состав. (MVC стоять за MОдел ВМЭН Сontroller.)
Поэтому, когда откроете ваш проект, он будет вызывать контроллер, затем, если есть какие-либо входящие значения из базы данных. Это получит это от модель, Тогда он будет загружен соответствующим Посмотреть который упоминается в контроллер.
Если это link22.php
это какой-то связанный файл с вашим проектом, вы должны поместить это внутри Посмотреть папка.
Да. вы можете. Для этого вы должны использовать APPPATH
,
Пример — Предположим link22.php
это внутри view/links/
Так что вы должны использовать
APPPATH.'view/links/link22.php'
Некоторые полезные ссылки
Есть моменты, когда вы разрабатываете, у вас будет структура папок для разных версий, таких как:
localhost / dev / или
локальный / бета /
и ваш живой сайт может иметь другое название
epicapps.com/preview/
с помощью base_url () вы можете отобразить на localhost / beta / в вашей локальной копии,
и epicapps.com/preview на вашем общедоступном сервере.
подсказка: вы можете установить base_url на своей главной странице index.php. лайк
$assign_to_config['base_url'] = 'http://localhost/beta/';
и убедитесь, что в application / config.php базовый URL-адрес пуст. $config['base_url'] = '';
затем вы можете перенести любые изменения из локальной папки приложения в папку приложения сервера, и файл конфигурации в приложениях не будет вас портить, поскольку base_url определяется в основном файле index.php.
Просто нашел это, используйте это, если кто-то найдет это полезным
если вы используете пользовательский порт на локальном хосте
упомянуть в вашем
приложение / Config / config.php
$config['base_url'] = 'http://localhost:portNo';