PHP: Gearr do chuibhreann aig an fhacal a ’cleachdadh strrpos

còd html

Ma tha thu ag obair le PHP agus gu bheil thu airson dìreach earrann bhon teacsa stòr agad a shealltainn agus a ghearradh dheth aig grunn charactaran, faodaidh an earrann agad a bhith a ’coimhead grànda ma tha e air a dhèanamh meadhan-sreang. B ’fheudar dhomh gnìomh a sgrìobhadh airson seo a dhèanamh ann an ASP agus ann an ASP.NET a bha gu bunaiteach a’ rothaireachd bhon charactar mu dheireadh air ais gus an àite mu dheireadh a lorg agus a ghearradh dheth an sin. Seòrsa de dhroch agus beagan de cus. Chì thu seo ann an gnìomh air an dachaigh agam duilleag far nach toir mi ach a ’chiad 500 caractar.

Bha mi làn deiseil an aon ghnìomh a leasachadh le PHP an-diugh ach fhuair mi a-mach (mar as àbhaist) gu robh gnìomh aig PHP a tha ga dhèanamh mu thràth, strrpos.

Bheir an seann chòd substring ($ susbaint) bhon chiad charactar chun an àireamh as motha de charactaran a tha thu ag iarraidh ($ maxchars):

$ content = substr ($ susbaint, 0, $ maxchars); mac-talla $ susbaint;

An còd ùr:

$ content = substr ($ susbaint, 0, $ maxchars); $ pos = strrpos ($ susbaint, ""); ma tha ($ pos> 0) {$ content = substr ($ susbaint, 0, $ pos); } mac-talla $ susbaint;

Mar sin bidh an còd ùr a ’gearradh dheth an t-susbaint aig a’ chrìoch caractar a tha thu a ’lorg. Ach, is e an ath cheum a bhith a ’coimhead airson an àite mu dheireadh (” “) san t-susbaint. Thig $ pos gu crìch mar an suidheachadh sin. A-nis, tha mi dìreach a ’dèanamh cinnteach gu bheil àite anns an t-susbaint le bhith a’ faighneachd a bheil $ pos> 0. Mura h-eil e ann, gearraidh e dheth an susbaint aig an àireamh de charactaran a dh ’iarr mi. Ma tha àite sam bith ann, gearraidh e gu gràsmhor an t-susbaint agam aig an àite.

Is e dòigh snog a tha seo airson am measgachadh den àireamh as motha de charactaran a chleachdadh agus an gearradh dheth aig an fhacal. An dòchas gun còrd e ribh!

Agus tha mi cinnteach gum faigh mi a-mach a bheil gnìomh ASP.NET ann a tha a ’dèanamh seo ... cha b’ urrainn dhomh fear a lorg.

7 Beachdan

  1. 1
  2. 2
  3. 3
  4. 4

    Ma tha $ susbaint SHORTER an toiseach na $ maxchars bidh an còd mar a chaidh a sgrìobhadh fhathast a ’coimhead ceart gu clì airson àite agus a’ gearradh a-mach am facal mu dheireadh. Faodaidh tu an dàrna cuid àite a cho-dhùnadh aig deireadh $ susbaint, no ma nì thu (strlen ()…)

  5. 5

    Bha e coltach gu robh seo ag obair mar ghnìomh (a ’dèiligeadh ris na thuirt e roimhe):

    showexcerpt gnìomh ($ susbaint, $ maxchars) {

    ma tha (strlen ($ susbaint)> $ maxchars) {

    $ content = substr ($ susbaint, 0, $ maxchars);
    $ pos = strrpos ($ susbaint, "");

    ma tha ($ pos> 0) {
    $ content = substr ($ susbaint, 0, $ pos);
    }

    till $ susbaint. “…”;

    } {Eile

    tilleadh $ susbaint;

    }

    }

  6. 6

    Dè ma tha an caractar mu dheireadh againn na charactar puingeachaidh mar làn-stad, comharra exclamation no comharra ceist? Gu mì-fhortanach, sguabaidh an còd seo am facal gu lèir ron charactar puingeachaidh sin.  

    Tha mi a ’smaoineachadh gum biodh tu na b’ fheàrr dheth a bhith a ’sgrìobhadh rudeigin beagan nas làidire.

  7. 7

Dè do bheachd?

Tha an làrach seo a 'cleachdadh Akismet gus spama a lùghdachadh. Ionnsaich mar a thathar a 'pròiseasadh an dàta bheachdan agad.