2017-02-14 6 views
0

Кажется, что у меня проблема с strpos() По какой-то причине он всегда возвращает false, когда это не должно.strpos всегда возвращает false

Это где проблема происходит:

if (strpos($attachment_url, $upload_dir_paths['baseurl']) !== false) { 
    //some code here 
} 

Я сделал var_dump из $attachment_url и $upload_dir_paths['baseurl'] и сравнивали оба значения, чтобы убедиться, что «игла» была в «стога» и на самом деле был.

var_dump($upload_dir_paths['baseurl']); //needle 
var_dump($attachment_url);     //haystack 

Результаты выше var_dump:

string(39) "//localhost:3000/wp-content/uploads" 
string(67) "//localhost:3000/wp-content/uploads/2016/10/stunning-photograph.jpg" 

Кто-нибудь знает, почему if заявление всегда возвращается false?

Благодаря

+0

'if (strpos (" //localhost:3000/wp-content/uploads/2016/10/stunning-photograph.jpg "," // localhost: 3000/wp-content/uploads ")! == false) { echo 'yes'; } 'дает да – RomanPerekhrest

+0

Работает для меня: [https://3v4l.org/UC6pN](https://3v4l.org/UC6pN) –

ответ

0

Я думаю, что проблема исходит от переменного $ upload_dir_paths [ 'BaseUrl'].
Строка «// localhost: 3000/wp-content/uploads» состоит из 35 символов, в отличие от 39 вашего вопроса.
Я думаю, что есть некоторые «скрытые» символы, которые не могут быть отображены вашим браузером/вашим терминалом.

Как решить проблему?
Возможно, попробуйте функцию «trim» на переменной $ upload_dir_paths ['baseurl']. Он должен решить проблему.

+0

Даже после обрезки строки' $ upload_dir_paths ['baseurl'] 'Я все еще получаю 39 символов, которые не имеют никакого смысла? – Myguel

+0

@Myguel Это странно ... Может быть, попробуйте 'substr ($ upload_dir_paths ['baseurl'], 5)' и uif это тот же вывод, но без 39 символов, это означает, что скрытые символы были удалены. Если символы строки были удалены, попробуйте использовать тот же метод, но так: 'substr ($ upload_dir_paths ['baseurl'], 0, 35)'. Если удалено только несколько символов, это означает, что скрытые символы находятся в строке, которая мне кажется сложнее удалить. – Ad5001

 Смежные вопросы

  • Нет связанных вопросов^_^