Пређи на садржај

Разговор:PHP/Архива 1

Садржај странице није подржан на другим језицима
С Википедије, слободне енциклопедије
Архива 1 Архива 2

Први поднаслов

(супротно од JavaScript-а који се извршава на страни клијента (client-side), у прегледачу - браузеру).

Ово није нимало срећно поређење, пошто постоји и Server-side JavaScript, који се такође извршава на серверу. --Славен Косановић {разговор} 09:22, 12. јун 2006. (CEST)[одговори]
Можеш ли да даш пример? Ако овде мислиш на AJAX (Asynchronous JavaScript and XML) или JAVA-у не бих могао да се сложим са сугестијом.
Мислио сам на..., боље види овдје . Што се тиче транскрипције рачунарских и информатичких појмова на ћирилицу, имали смо расправе о томе на десетине сраница Википедија:Тим/рачунарство и информатика, и ја сам увијек био против транкрипције (и сада сам), али је велика већина била и остала "за"... --Славен Косановић {разговор} 10:53, 13. јун 2006. (CEST)[одговори]
... хмм, хвала. Човек научи по нешто ново сваког дана. Наведени текст се ипак могао поправити навођењем да од наведеног постоји одступање, које реферира ка SSJS, али у принципу нема потребе наводити друге програмске језике без жеље за опширнијим поређењем, што, претпостављам, није била намера аутора фрагмента текста. --Михајло Анђелковић 14:27, 13. јун 2006. (CEST)[одговори]
Уопште се не ради о одступању. JavaScript се користи:
  • као језик Microsoft ASP (Advanced Server Pages), присутан и у .NET
  • као један од језика Microsoft Scripting Engine

--Asusnjar 15:45, 13. јун 2006. (CEST)[одговори]

Тачно тако. Иначе нема те одавно... ;) --Славен Косановић {разговор} 15:52, 13. јун 2006. (CEST)[одговори]

Само малко, одступање које ја спомињем је одступање од исказа (супротно од JavaScript-а који се извршава на страни клијента (client-side), у прегледачу - браузеру). То јест тврдим да од наведеног текста постоји одступање, које реферира ка нечему. То "нешто" у сваком случају није названо "одступањем". У сваком случају услов тачности би био задовољен: исказ са почетка стране се може допунити тако да буде тачан. Нисам ли у праву? --Михајло Анђелковић 19:49, 13. јун 2006. (CEST)[одговори]

Наслов...

Конкретно ми се није свидело да се у наслову натпис PHP једноставно препише на ћирилицу са ПХП. Ако је разлог за ово увођење екавице и ијекавице (приликом чије конверзије PHP ионако бива конвертовано у ПХП) са реакцијом не могу да се сложим, јер ако је се натпис на одређеним местима погрешно интерпретира то не значи да мора да буде нетачан и у оригиналу.

Нетачан је овде кључна реч те ћу да затражим образложење због чега би запис ПХП био тачан. Према мом мишљењу, он треба да буде или PHP или интерпретација ове речи на нашем језику за шта би пример (можда не баш срећан) био „пе-ха-пе“.

Не би било лоше да се промени и категорија овог чланка јер не припада у програмске језике. Осим тога, требало би размислити и о самом наслову, ја сам строго против транскрипције, али ако боље погледате, цео чланак је ћирилични само је латинично PHP (пе-ха-пе), што неко ко се први пут сусреће са овим може да прочита као РНР (ер-ен-ер). --Bluesman (разговор) 02:44, 4. јун 2008. (CEST)[одговори]

И на ен.вики је категорисан као (процедурални) програмски језик. Скрипт језици свакако јесу подскуп програмских језика, као што се може видети и у првој реченици овде. -- Обрадовић Горан (разговор) 03:39, 4. јун 2008. (CEST)[одговори]
Мислим да је битно да се наведе да је скрипт језик јер у оригиналном чланку стоји да је програмски језик без додатних објашњења, сама реч препроцесор говори о томе а ево погледао сам и на www.php.net где пише "PHP is a widely-used general-purpose scripting language" чак и без помена програмског језика. Желим да кажем да је то битно због прецизности самог чланка. --Bluesman (разговор) 16:22, 4. јун 2008. (CEST)[одговори]

Slažem se da je bolje staviti da je u pitanju skriptni jezik, ali „skriptni“ a ne „skript“ jezik. Konstrukcija „skript jezik“ je nastala lošim prevodom engleske konstrukcije „script language“, jer „skript“ u srpskom nije pridjev nego imenica (takođe pogrešna varijacija od „skripta“), a u engleskom jeziku je dozvoljeno koristiti imenicu kao pridjev; ne i u srpskom, međutim.

Moram još samo da dodam nešto čemu nije mjesto ovde, ali ajde kad smo već tu. U članku „skript jezik“ (čiji je i sam naslov pogrešan) se brka razlika između kompajlera i interpretera sa razlikom između skriptnog i programskog jezika (koja čak ni ne postoji, jer su programski jezici nadskup skriptnih), tako da bi taj članak trebalo ozbiljno revidirati. --Дарко Максимовић (разг.) 17:23, 4. јун 2008. (CEST)[одговори]

брисано

У следећем примеру имамо два израза:

$x = 6 < 8 and 5 < 3;

$y = 6 < 8 && 5 < 3;

У првом изразу оператори ће се применити на следећи начин:

  1. одређује се вредност поређења 6 < 8 и вредности поређења 5 < 3, при чему је прво поређење тачно, а друго нетачно
  2. резултат поређења 6 < 8 ће се доделити променљивој $x, те ће она као резултат добити бројна вредност 1
  3. примениће се оператор and између променљиве $x и резултата поређења 5 < 3, али се резултат овог поређења неће доделити ни једној променљивој
  4. на крају, променљива $x ће имати вредност тачно, што претворено у нумеричу вредност има вредност 1

У другом изразу оператори ће се применити на следећи начин:

  1. одређује се вредност поређења 6 < 8 и вредности поређења 5 < 3, при чему је прво поређење тачно, а друго нетачно
  2. над резултатом прва два поређења примениће се оператор &&, што ће као резултат дати вредност нетачно
  3. променљива ће имати вредност нетачно, што претворено у цео број (int)$у постаје 0, док као знаковна променљива постаје празан текст ""--Тајга 02:30, 3. новембар 2012. (CET)
Није уопште тачно, а то се може видети помоћу следећег једноставног програма:
<?
echo "<pre>\n";

function sest() {
	global $x;
	echo "шест\n";
	echo "\$x = ";
	var_dump( $x );
	return 6;
}

function osam() {
	global $x;
	echo "осам\n";
	echo "\$x = ";
	var_dump( $x );
	return 8;
}

function pet() {
	global $x;
	echo "пет\n";
	echo "\$x = ";
	var_dump( $x );
	return 5;
}

function tri() {
	global $x;
	echo "три\n";
	echo "\$x = ";
	var_dump( $x );
	return 3;
}

$x = sest() < osam() and pet() < tri();
var_dump( $x );
Резултат:
шест
$x = NULL
осам
$x = NULL
пет
$x = bool(true)
три
$x = bool(true)
bool(true)
Дакле:
У првом изразу оператори ће се применити на следећи начин:
  1. одређује се вредност поређења 6 < 8, што је тачно
  2. резултат поређења 6 < 8 ће се доделити променљивој $x, те ће она као резултат добити булову вредност true ово се може видети из тога што је $x true у току позивања функције pet()
  3. одређује се вредност поређења 5 < 3, што је нетачно
  4. примениће се оператор and између променљиве $x и резултата поређења 5 < 3, али се резултат овог поређења неће доделити ни једној променљивој ово се не може видети из овог програма али је тачно колико ја знам
  5. на крају, променљива $x ће имати вредност тачно нумеричка вредност ће само да збуњује људе
Ово друго је тачније, међутим овде постоји проблем:
  1. одређује се вредност поређења 6 < 8 и вредности поређења 5 < 3, при чему је прво поређење тачно, а друго нетачно
Да, али није битно. Између ове две операције, && се консултује (не знам баш како ово да назовем али се не евалуира) да би се установило да ли ће резултат целе операције бити тачан (пошто ако је први израз нетачан не може ни цели исказ бити тачан) и у случају да неће, остале операције се ни не извршавају. Ово се може видети ако се у горњем програму замени претпоследњи ред са
$x = osam() < sest() && pet() < tri()
. Добиће се:
осам
$x = NULL
шест
$x = NULL
bool(false)
Дакле, функције pet() и tri() се уопште ни не позивају. Ово се веома често користи и мора се нагласити.
Даље, што се тиче приоритета оператора, било је више грешака него што има оператора:
Када у једном изразу постоји комбинација више оператора, њихов редослед приоритета, од највећег ка најмањем, је следећи[1]:
  1. највећи приоритет имају загреде () од унутрашњих ка спољашњим ← ајд да кажемо да заграде имају највећи приоритет, али уопште нису оператори, што свакако треба нагласити
  2. оператори за сабирање (++) и одузимање (--), конверзија типа податка ← 1) ++ и -- нису оператори за сабирање и одузимање, 2) прескочени су оператори clone, new, [, ~, -, @ и 3) конверзија типа података има мањи приоритет од ++ и --.
  3. множење (*) , дељење (/) и модуло (%), извршавају се с лева на десно ← прескочен је оператор !
  4. оператори за сабирање и одузимање ← оператор за надовезивање знаковних ниски има исти приоритет као оператори за сабирање и одузимање
  5. оператори за надовезивање знаковних ниски ← такође
  6. операције за померање битова
  7. оператори поређења (једнакост, неједнакост и идентичност) ← неки оператори поређења имају мањи приоритет од других
  8. условни оператори ← 1) постоји само један условни оператор, 2) прескочени су оператори &, ^, |, &&, ||
  9. оператори за додељивање вредности
  10. логички оператори (and, or, xor) ← ови оператори немају међусобно исти приоритет
  11. логички оператори (&, ^, &&, ||) ← 1) & и ^ нису логички оператори, 2) ови оператори немају међусобно исти приоритет и 3) сви треба да иду горе изнад условног оператора
Такође, асоцијативност оператора наведена је само у једном реду, а треба у сваком, ако је и у једном.
Најзад, изражавам сумњу да је за писање овог текста коришћен извор [1] јер се управо табела са приоритетом оператора на страницама 135 и 136 не налази у онлајн издању књиге. Тајга, да ли имаш папирно издање књиге? Никола (разговор) 07:53, 3. новембар 2012. (CET)[одговори]


У праву си дајем ти за право.
<html>
<head>
<title>Проба са операторима</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php
$X = 6 < 8 and 5 < 3;
$Y = 6 < 8 && 5 < 3;


if ($X = 6 < 8 and 5 < 3)
{
  echo "израз је тачан";
}
elseif (($X = 6 < 8 and 5 < 3) == false)
{
 echo "израз $ X = 6 < 8 and 5 < 3 је нетачан";
}
else
{
  echo "израз $ X = 6 < 8 and 5 < 3 је немам појма шта";
}
if (($Y = 6 < 8 && 5 < 3))
{
  echo "израз је тачан";
}
elseif (($Y = 6 < 8 && 5 < 3) == false)
{
 echo "<p> израз  $ Y = 6 < 8 && 5 < 3 је нетачан</p>";
}
else
{
  echo "<p>израз $ Y = 6 < 8 && 5 < 3 је немам појма шта</p>";
}
if ($X)
{
  echo "<p>X је тачан</p>";
}
else
{
  echo "<p>X је нетачан</p>";
}
if ($Y)
{
  echo "<p>Y је тачан</p>";
}
else
{
  echo "<p>Y је нетачан</p>";
}

echo "<p>Бројна вредност за X је (". (int)$X . ") односно, као знаковна променљива X је ($X)</p>";
echo "<p>Бројна вредност за Y је (". (int)$Y . ") односно, као знаковна променљива Y је ($Y)</p>";


?>
</body>                                                
</html>

израз $ X = 6 < 8 and 5 < 3 је нетачан
израз $ Y = 6 < 8 && 5 < 3 је нетачан

X је тачан

Y је нетачан

Бројна вредност за X је (1) односно, као знаковна променљива X је (1)

Бројна вредност за Y је (0) односно, као знаковна променљива Y је ()
Има ту још пуно тога да се дода и обрише. Имам странице 135 и 136. Вероватно да у таквом издању, не могу сви да виде исто, а то што имам нема смисла овде да постављам, нећу такође никоме да шаљем. Довољно си био јасан са сумњом коју си изразио о тачности извора или мог начина да га овде пренесем. Вероватно сам се запетљала у преписивњу редоследа, могло је да се исправи, али мислим да све скупа не вреди више мога труда. С тим у вези се радујем што има стручњака, који тему могу лепо да обраде и што ће вероватно једнога дана то бити тачније и боље. Дала сам допринос, какав такав и дотле сам дошла, а одатле, само могу да пожелим све најбоље --Тајга 13:44, 3. новембар 2012. (CET)
Нажалост, ови стручњаци су толико стручни да од своје стручности немају времена да озбиљније раде на Википедији Ја обећавам да ћу колико сутра проширити одељак о приоритетима, а надам се ипак да ћеш наставити да радиш на чланку, у остатку чланка нисам приметио неке озбиљније грешке а стварно не видим зашто ти ово толико смета. Са твојим ентузијазмом и мојом стручношћу, видим да бисмо овде могли да направимо изабрани чланак Никола (разговор) 07:00, 4. новембар 2012. (CET)[одговори]
Уствари, што више читам чланак све се више чудим како је све тако сјајно написано, а само ово о приоритетима изгрешено - као да није писала иста особа Никола (разговор) 07:20, 4. новембар 2012. (CET)[одговори]
Није грешка била баш толика. Има стварно један ред који ми је отишао ниже него што треба, грешка у писању (замор вероватно), нисам хтела да правим целу табелу, то ми је било превише. Нашла сам била једну скраћену, можда није била довољно прецизна, и можда је стварно требало убацити целу. Што се тиче примера, Ти си у другом примеру обрнуо бројеве:
$x = osam() < sest() && pet() < tri()
кад си узео да пробаш, то није било оно што сам својевремено написала, наравно да се онда не извршава на исти начин. Било је овако:
$x = sest() < osam()  && pet() < tri()
Мада је могао да буде и такав пример. Нисам хтела на то да ти посебно указујем, мислила сам да ћеш сам увидети, која је била поента примера, али ... преварила сам се. И онда џаба ентузијазам, ако ће свако коме се нешто не допада лепо узети и обрисати све што је написано. Не допада ми се идеја и противна сам изабирању чланака за било шта, чак и као шала. Бежим максимално од таквих ствари --Тајга 10:34, 4. новембар 2012. (CET)

Табела низови

Шта није било у реду са табелом која је садржала функције низова? (линк) --Hoxxy (разговор) 13:29, 4. новембар 2012. (CET)[одговори]

Била је лепа, мислим да је обрисана грешком ... или ко ће га знати... --Тајга 13:46, 4. новембар 2012. (CET)
Имали смо сукоб измена, нисам је био видео. Никола (разговор) 15:28, 5. новембар 2012. (CET)[одговори]