PHP JSON û fonksiyonên Callback

Parzûnên PHP -Rastkirin û Paqijkirin
Regex di PHP de

Di vê gotarê de, hûn ê li ser formata JSON û fonksiyonên wê yên PHP yên berdest fêr bibin. Di heman demê de, em ê li fonksiyonên Callback di PHP de binihêrin. Ji ber vê yekê, em dest pê bikin.

JSON çi ye?

JSON ji bo Javascript Object Notation radiweste. Ew avahiyek e ku daneyên bi rengek bêtir xwendinê temsîl dike. JSON li seranserê cîhanê hema hema ji hêla hemî zimanan ve tê bikar anîn, ji ber vê yekê ew di çêkirina daxwazên cross-platform û wergirtina bersivan de rolek girîng dilîze.

Her ziman dikare JSON bixwîne, ji ber vê yekê, piraniya bangên API-ê daneya têketina JSON û derketina bersivê têne bikar anîn. Di PHP-ê de hin fonksiyonên JSON-ê yên çêkirî hene.

  1. json_encode()
  2. json_decode()

json_encode ji bo şîfrekirin an veguheztina nirxek di forma JSON de tê bikar anîn. Li nimûneya jêrîn binêrin.

<?php
$age = array("Peter"=>35, "Ben"=>37, "Joe"=>43);

echo json_encode($age);
?>

json_decode ji bo veguheztin an deşîfrekirina tişta JSON di nav rêzek hevgirtî (cotên key-nirx) an nirxek PHP-ê de tê bikar anîn. Li mînaka jêrîn binêrin.

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';

var_dump(json_decode($jsonobj));
?>

Parametreya duyemîn a json_decode boolean e. Ger li ser xelet were danîn, ew tiştek vedigerîne. Ger ew rast were danîn, ew rêzek hevgirtî vedigerîne. Mînaka jêrîn pîvana duyemîn a json_decode bikar tîne.

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';

var_dump(json_decode($jsonobj, true));
?>

Meriv çawa xwe bigihîne nirxên vegerê yên json_decode?

Wekî ku em li jor jî dibînin ku json_decode dema ku pîvana duyemîn rast dibe, tiştek ji hêla xwerû û rêzek hevgirtî vedigerîne. Em ê mînakan nîşanî we bidin ku hûn ji her yek ji van derhaneyan bigihîjin nirxan.

Mînak 1 - json_decode objeyê vedigerîne

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';

$obj = json_decode($jsonobj);

echo $obj->Peter;
echo $obj->Ben;
echo $obj->Joe;
?>

Mînak 2 - json_decode rêzek hevgirtî vedigerîne

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';

$arr = json_decode($jsonobj, true);

echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
?>

Meriv çawa di nav rêza json_decode de vedigere?

Wekî ku em dizanin, json_decode rêzek hevgirtî vedigerîne. Ji ber vê yekê, foreach loop dikare hem bişkojkan hem jî nirxên wan di json_decode de bigihîne. Li mînaka jêrîn binêrin ku tê de em li ser encama json_decode dubare dikin.

Mînak:

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';

$arr = json_decode($jsonobj, true);

echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
?>

Di PHP-ê de fonksiyonên paşvekişandinê

Fonksiyonek wekî argumanek ji fonksiyonek din re derbas dibe, jê re fonksiyona paşvekişandinê tê gotin. Hûn dikarin fonksiyona vegerê ya xwe diyar bikin û wê ji fonksiyonek din re derbas bikin. Di vê rewşê de, tenê navê fonksiyonê wekî rêzek derbas bikin. Li mînaka jêrîn a fonksiyonek vegerê ya hêsan a di PHP de binihêrin.

<?php
function my_callback($item) {
  return strlen($item);
}

$strings = ["apple", "orange", "banana", "coconut"];
$lengths = array_map("my_callback", $strings);
print_r($lengths);
?>

PHP 7 û 8 naha dikarin fonksiyonek nenas wekî fonksiyonek vegerê derbas bikin. Di mînaka jêrîn de, hûn ê fêr bibin ka meriv çawa fonksiyonek nenas wekî fonksiyonek vegerê di PHP-ê de derbas dike.

<?php
$strings = ["apple", "orange", "banana", "coconut"];
$lengths = array_map( function($item) { return strlen($item); } , $strings);
print_r($lengths);
?>

Meriv çawa fonksiyona diyarkirî ya bikarhêner wekî fonksiyona vegerê bikar tîne?

Mîna fonksiyonek normal, di fonksiyona xwe de guherbarên argumanan bikar bînin. Naha, vê fonksiyonê wekî fonksiyonek vegerê derbas bikin.

Mînak:

<?php
function exclaim($str) {
  return $str . "! ";
}

function ask($str) {
  return $str . "? ";
}

function printFormatted($str, $format) {
  // Calling the $format callback function
  echo $format($str);
}

// Pass "exclaim" and "ask" as callback functions to printFormatted()
printFormatted("Hello world", "exclaim");
printFormatted("Hello world", "ask");
?>

Wekî ku hûn naha bi formata JSON, fonksiyonên json_encode, json_decode, û vegerandina bangê di PHP de nas dikin. Di beşa pêş de, em ê li ser du têgînên hêsan, lê pir hêsan û girîng ên PHP-ê fêr bibin.

Di PHP-ê de peyva sereke çi ye?

Peyva sereke di PHP-ê de bicîh bikin ku destûrê dide pelek derveyî ku xwedan nivîsa PHP-ê ye, di pelê heyî de bikar bînin. Ew me ji nivîsandina koda pelê dîsa û dîsa li her deverê ku em dixwazin koda wê bikar bînin xilas dike.

Bêyî karanîna keyworda tevlêbûnê, kod dikare tevlihev an zêde be. Ji bo çareserkirina pirsgirêka zêdebûnê, PHP du peyvan peyda dike, tê de û hewce dike. Bi awayekî mantiqî, ew heman tiştî dikin lê ji hev cuda ne. Ka em wan yek bi yek derbas bikin!

Cûdahiya di navbera tevlêbûn û hewceyê di PHP de çi ye?

linavxistinxwestin
Peyva sereke tê de destûrê dide ku hûn perçeya kodê di hin pelên derveyî de, di koda xweya heyî de bikar bînin. Tenê pelê li jora skrîpta PHP-ê bi karanîna keyworda navlê zêde bikin û hûn dikarin koda wê pelê di koda xweya heyî de bigihînin. Li vir, ya girîng ev e, heke pelê ku hûn di keywordê de destnîşan dikin tune be an xeletiyek tê de hebe. Ew ê E_HIŞYARÎ çêbike lê skrîpta we namîne.Ji hêla din ve, pêdivî ye ku peyva sereke jî tê bikar anîn da ku pelên kodê yên derveyî li nivîsara PHP-ya heyî zêde bike. Lê li ser her cûre têkçûna pelê, an di doza pelek wenda de, fonksiyonê hewce dike ku E_COMPILE_ERROR hilberîne û rê nade ku skrîpt were darve kirin. Wê pêvajo bisekine.
PHP Include vs Require

Kîjan çêtir e ku meriv ji nav tevlêbûnê an hewcedariyê bikar bîne?

Hilbijartina di navbera tevlêbûn û hewcedariyê de bi doz an senaryoyê ve girêdayî ye.

Ger hûn li ser platformek dixebitin ku tê de ewlehiya bilind xema sereke ye. Di vê rewşê de, divê hûn keyworda pêwîst bikar bînin. Ji ber ku keyworda pêwîst rê nade ku skrîpt ji bo xeletiyek di pelê pêvekirî de were darve kirin an jî heke pel neyê dîtin.

Heke hûn dixwazin skrîpta we ji ber pelê tê de nesekine, hûn dikarin di vê rewşê de fonksiyona tevlêbûnê bikar bînin. Ew ê we di derheqê pirsgirêkê de bi karanîna xeletiya E_WARNING qebûl bike.

Hevoksaziya têde û pêdivî ye

include 'filename';

or

require 'filename';

1:

<h1>Welcome to my home page!</h1>
<?php include 'noFileExists.php';
echo "I have a $color $car.";
?>

2

<h1>Welcome to my home page!</h1>
<?php require 'noFileExists.php';
echo "I have a $color $car.";
?>

Di belgeyên fermî de li ser vê mijarê bêtir fêr bibin json_encode, json_decode, û PHP callback karûbaran

Parzûnên PHP -Rastkirin û Paqijkirin
Regex di PHP de
nêzîkî

Di derbarê PHP-ê de rojane bimînin!

Em spam nakin!

en English
X
Scroll to Top