PHP: Изрежете откъса си от думата, като използвате strrpos

html код

Ако работите с PHP и искате да покажете само откъс от изходния си текст и да го отрежете на няколко знака, вашият откъс може да изглежда грозен, ако е направен в средата на низ. Трябваше да напиша функция, за да направя това в ASP и в ASP.NET, която основно циклира от последния символ обратно, за да намери последното пространство и да го отсече там. Неприятно и малко прекалено много. Всъщност можете да видите това в действие в моя дом страница където предоставям само първите 500 знака.

Бях напълно готов да разработя същата функция с PHP днес, но установих (както обикновено), че PHP вече има функция, която го прави, strrpos.

Старият код ще вземе подниз ($ съдържание) от първия символ до максималния брой символи, който искате ($ maxchars):

$ content = substr ($ content, 0, $ maxchars); echo $ съдържание;

Новият код:

$ content = substr ($ content, 0, $ maxchars); $ pos = strrpos ($ съдържание, ""); if ($ pos> 0) {$ content = substr ($ content, 0, $ pos); } echo $ съдържание;

Така че новият код първо отрязва съдържанието при ограничението на броя знаци, което търсите. Следващата стъпка обаче е да се търси последното интервал („“) в съдържанието. $ pos ще завърши като тази позиция. Сега просто се уверявам, че в съдържанието всъщност има място, като попитам дали $ pos> 0. Ако няма, то просто ще отреже съдържанието на броя знаци, които съм поискал. Ако има място, то ще отсече изящно съдържанието ми в пространството.

Това е хубав начин за използване на комбинацията от максималния брой знаци и отрязването му при думата. Надявам се да ти харесва!

И съм сигурен, че ще разбера дали има функция ASP.NET, която прави това ... Не можах да намеря такава.