Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Filename cannot be empty при require? 
:(
    Опции темы
Kotakota
Дата 25.4.2011, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 14.12.2010

Репутация: нет
Всего: нет



Привет.
Кто подскажет, в чем скрытый смысл вот этого:

index.php

Код

<?php
$config='config/config.php';
$myV= new SomeClass($config);
?>



SomeClass.php

Код

<?php
public $config;
function __construct($config=null){
$this->config = require_once($config);
}
// ...blahblah
?>


Файл существует, путь в переменной $config, файла index.php - правильный!
При вызове require_once($config), происходит ошибка:
Warning: require_once() [function.require-once]: Filename cannot be empty in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\SomeClass.php on line 3

С чем это связано?

А если немного переделать SomeClass.php

Код

<?php
public $config;
function __construct($config=null){
if(is_string($config))
$this->config = require_once($config);
}
// ...blahblah
?>


То все работает! Файл подключается!
В чем скрытая магия is_string()?


[Поздняя мысль!]
Есть мысль, что просто невозможно сделать require_once($config), где $config=null.
Для теста поставил function __construct($config='test'), появилась ошибка:
Warning: require_once(dadas) [function.require-once]: failed to open stream: No such file or directory
что в принципе правильно...

Я прав?

Это сообщение отредактировал(а) Kotakota - 25.4.2011, 12:35
PM MAIL   Вверх
bars80080
Дата 25.4.2011, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



Цитата(Kotakota @  25.4.2011,  12:28 Найти цитируемый пост)
Я прав?

если прочитать текст ошибки, то сразу становится ясно:
Цитата(Kotakota @  25.4.2011,  12:28 Найти цитируемый пост)
Filename cannot be empty in

имя файла не может быть пустым
PM MAIL WWW   Вверх
ayax2005
Дата 25.4.2011, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


echo $smile
**


Профиль
Группа: Участник
Сообщений: 516
Регистрация: 17.4.2008
Где: Питер

Репутация: 2
Всего: 11



Рассуждаете правильно. Но мне вот интересно, что вы ждёте в атрибуте безямянного класса $this->config после выполнения require?


--------------------
все вопросы - из-за неверной формулировки задачи
PM MAIL ICQ   Вверх
Kotakota
Дата 25.4.2011, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 14.12.2010

Репутация: нет
Всего: нет



Цитата(ayax2005 @ 25.4.2011,  14:08)
Рассуждаете правильно. Но мне вот интересно, что вы ждёте в атрибуте безямянного класса $this->config после выполнения require?

Была скопирована только та часть класса, где происходила ошибка.
Поэтому Class SomeClass {} нет.
$this->config - здесь будет массив с конфигурацией.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0596 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.