Sign in to follow this  
subm41

PHP. Инвалидный аргумент

Recommended Posts

Я приветствую всех кто сейчас это читает! Ребята, у меня такая вот проблема и я действительно не понимаю почему она есть.. Вот допустим я написал маленький скрипт:

<?php$a = file("1.txt");$b = "\"".trim($a[0])."\"";$c = file($;echo "<pre>";print_r($c);echo "</pre>";?>

В файле 1.txt на первой и единственной строке находится ссылка и этот файл в виде массива уходит в переменную $a где эта ссылка имеет ключ 0. Потом я в переменную $b заношу эту ссылку и убираю пробел справа (кстати, не понимаю откуда он там взялся) и затем уже добавляю ещё и кавычки. Получается в переменную $c должен попасть массив уже той страницы на которую была ссылка но этого не происходит и в месте этого пишет "Инвалидный аргумент" на этой строке. Я так понял что он не может прочитать потому что этого файла как-будто нет но на самом деле он точно есть и доступен по тому адресу который был написан в файле 1.txt.

 

Я пытался найти ответ почему так происходит у Гугла и в основном там буржуйские сайты у кого такая же ошибка примерно с такими же манипуляциями. Ну так вот, я и экранировал слэши в ссылке и менял кавычки и пути и всё равно "инвалидный аргумент".

 

Причём очень интересно то что если я допустим присвою переменной $b эту же ссылку своими руками то всё работает и массив $c распечатывается и когда я вывожу переменную $b то туда попадает тоже самое как если бы я написал эту ссылку своими руками. Но в случаи когда пишу сам всё работает а когда вот так как в скрипте то нет. Очень странно. Помогите разобраться.

 

Спасибо за внимание!

Share this post


Link to post
Share on other sites

var_dump говорит string(45) ""здесь ссылка с моими кавычками"".

 

Кавычки добавляю чтобы в переменную $b попало вот так "ссылка", а не так ссылка. Чтобы в итоге получилось вот так file("ссылка"), а не так file(ссылка).

Share this post


Link to post
Share on other sites
Кавычки добавляю чтобы в переменную $b попало вот так "ссылка", а не так ссылка. Чтобы в итоге получилось вот так file("ссылка"), а не так file(ссылка).
 

Так делать не надо. " обозначает строку только в литерале. А $a[0] - и так строка. Уберите добавление кавычек.

Share this post


Link to post
Share on other sites

Поподробней о том что я уже говорил, об интересном:

$b = "ссылка";$c = file($;print_r($c);

Вот так всё работает, но если я прям всё тоже самое что сейчас в переменной $b передаю из другого массива то ничего не работает, очень удивительно.

Share this post


Link to post
Share on other sites

Ёлки палки, а серьёзно ведь без кавычек всё работает. Самое смешное то что я перебрал абсолютно все комбинации кроме этой. :rofl:

 

Буду считать это хорошим уроком!

 

А Вам, уважаемый afdw большое спасибо что уделили мне время!

Share this post


Link to post
Share on other sites

Я советую вам получше изучить программирование, а не действовать методов научного тыка. Такие вещи должны казаться вам очевидными.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By deekep
      Как запустить файл типа index.php на пк? 
    • By мурамаса
      Добрый день, не знаю по теме ли вопрос с PHP include, но может кто нибудь знает и поможет.
      Сайты разрабатываю на локальном сервере. Суть в том что когда я применяю функции php include, почему то стили не работают, но не всегда, потому что до этого я делал тоже самое с другим файлом и все работало нормально.  Я просто понять не могу в чем вообще может быть проблема, браузер обновлял crtl+f5, чистил кэш.
      <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="/css/vsestyle.css"> </head> <body> <header> <div class="box"> </div> </header> <section> <div class="box"> <?php include"blocks/left-side-bar.php" ?> <?php include"blocks/right-side-bar.php" ?> </div> </section> <div class="box"> </div> </section> <section> <div class="box"> </div> </section> <section> <div class="box"> </div> </section> </body> </html> body { padding: 0; margin:0; } header { background: url(/img/vseback.png); height: 300px; } // СТИЛИ ЛЕВОГО БОКОВОГО МЕНЮ И БЛОКА .menu { float: left; } .menu li { list-style-type: none; padding: 10px; } .menu li a { text-decoration: none; } .left-side-bar { float: left; } // СТИЛИ ПРАВОГО БОКОВОГО БЛОКА .right-side-bar { float: right; font-size: 30px; } Так вот все стили применяются корректно, кроме последнего .right-side-bar. В том числе к include"blocks/left-side-bar.php" стили применились нормально, помогите)
      Кроме того, класс "menu", вложен в left-side-bar.php и на нем все стили отображаются нормально.
    • By Irina Wialon
      Доброго времени суток!

      Ищем разработчика PHP (опыт 1-3 года в разработке), уровень заработка зависит от Вашего опыта от 70 до 130 тыс.рублей.
      Постоянная работа, полная занятость, ООО "Виалон ОЙЛ", офис в Санкт-Петербурге, шаговая доступность от м.Удельная.

      Задачи:
      Поддерживать наши сайты (дорабатывать внешне страницы, вставлять формы, интегрировать с общей админкой, подключать внешние API, добавлять новый функционал различной сложности). Разработка функционала админки (работа с базой данных, парсинг сайтов, разработка различных форм, работы с внешними API, внутренние рассылки, верстка типовых страниц, разработка нового функционала различной сложности). Сделать новый сайт под проект или лендинг на базе нашей системы, внедрять стороннюю верстку (уметь в ней разобраться и вносить изменения).
      Необходимые знания:
      HTML, Javascript (jQuery), CSS (т.е. полным фронтендом).

      От заинтересованных ждем:
      ссылку на проект (с описанием того, что там делали), который можно посмотреть для оценки подхода в подачи для пользователя, скорости работы, корректности работы; обязательно нужен образец своего кода на примере какого-то проекта (можно прислать архивом или ссылка на github). Почта для отправки резюме и примеров работ: udoben@bk.ru
  • Member Statistics

    46,235
    Total Members
    3,128
    Most Online
    Drevko
    Newest Member
    Drevko
    Joined
  • Recently Browsing   0 members

    No registered users viewing this page.