คำถามติดแท็ก php

PHP เป็นภาษาสคริปต์ที่ใช้กันอย่างแพร่หลายในระดับสูงมีการเปลี่ยนแปลงเชิงวัตถุและมีการตีความที่ออกแบบมาเพื่อการพัฒนาเว็บเซิร์ฟเวอร์เป็นหลัก ใช้สำหรับคำถามเกี่ยวกับภาษา PHP

2
ข้อดีข้อเสียของค่าคงที่ของอินเทอร์เฟซ [ปิด]
ปิด . คำถามนี้เป็นคำถามความคิดเห็นตาม ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบได้ด้วยข้อเท็จจริงและการอ้างอิงโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ อินเทอร์เฟซ PHP อนุญาตให้กำหนดค่าคงที่ในอินเทอร์เฟซเช่น interface FooBar { const FOO = 1; const BAR = 2; } echo FooBar::FOO; // 1 คลาสการใช้งานใด ๆ จะมีค่าคงที่เหล่านี้โดยอัตโนมัติเช่น class MyFooBar implement FooBar { } echo MyFooBar::FOO; // 1 สิ่งนี้ของฉันเองคือสิ่งที่ Global is Evilอะไรที่ทั่วโลกเป็นความชั่วร้ายแต่ฉันสงสัยว่าสิ่งเดียวกันนี้ใช้กับค่าคงที่ของอินเทอร์เฟซหรือไม่ เนื่องจากการเข้ารหัสกับอินเทอร์เฟซถือเป็นแนวทางปฏิบัติที่ดีโดยทั่วไปการใช้ค่าคงที่ของอินเตอร์เฟสเป็นค่าคงที่เพียงอย่างเดียวที่ยอมรับให้ใช้นอกบริบทของคลาสได้หรือไม่ ในขณะที่ฉันอยากทราบความคิดเห็นส่วนตัวของคุณและคุณใช้ค่าคงที่ของอินเทอร์เฟซหรือไม่ แต่ฉันก็มองหาเหตุผลที่เป็นประโยชน์ในคำตอบของคุณเป็นหลัก ฉันไม่ต้องการให้เป็นคำถามประเภทการสำรวจความคิดเห็น ฉันสนใจว่าค่าคงที่ของอินเทอร์เฟซมีผลต่อการบำรุงรักษาอย่างไร …
105 php  interface  constants 

9
ฉันจะแทรกค่า NULL โดยใช้ PDO ได้อย่างไร
ฉันใช้รหัสนี้และฉันก็ไม่รู้สึกหงุดหงิด: try { $dbh = new PDO('mysql:dbname=' . DB . ';host=' . HOST, USER, PASS); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $dbh->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'"); } catch(PDOException $e) { ... } $stmt = $dbh->prepare('INSERT INTO table(v1, v2, ...) VALUES(:v1, :v2, ...)'); $stmt->bindParam(':v1', PDO::PARAM_NULL); // --> Here's the problem PDO::PARAM_NULL, null, '', ทั้งหมดล้มเหลวและโยนข้อผิดพลาดนี้: ข้อผิดพลาดร้ายแรง : …
105 php  mysql  pdo  null  sql-insert 

8
PHP YAML Parsers [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดขึ้นมาใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา มีใครรู้จัก YAML Parser ที่ดีสำหรับ PHP บ้าง? ถ้าเป็นเช่นนั้นข้อดีข้อเสียของห้องสมุดนี้คืออะไร?
105 php  parsing  yaml 

6
การพิสูจน์ตัวตนใน PHP โดยใช้ LDAP ผ่าน Active Directory
ฉันกำลังมองหาวิธีตรวจสอบสิทธิ์ผู้ใช้ผ่าน LDAP ด้วย PHP (โดยมี Active Directory เป็นผู้ให้บริการ) ตามหลักการแล้วควรจะสามารถทำงานบน IIS 7 ได้ ( adLDAP ทำงานบน Apache) ใครเคยทำอะไรที่คล้ายกันประสบความสำเร็จ? แก้ไข: ฉันต้องการห้องสมุด / ชั้นเรียนที่มีรหัสที่พร้อมใช้งาน ... มันคงโง่ที่จะประดิษฐ์วงล้อเมื่อมีคนทำไปแล้ว

12
apc กับ eaccelerator กับ xcache
ฉันกำลังหาข้อมูลว่าจะใช้อันไหนดีและฉันหาสิ่งที่โดดเด่นไม่ได้จริงๆ Eacceleratorเร็วกว่าAPCแต่ APC ได้รับการดูแลดีกว่า Xcacheเร็วกว่า แต่คนอื่น ๆ มีไวยากรณ์ที่ง่ายกว่า ใครมีคำแนะนำว่าควรใช้ตัวไหนและทำไม?

6
isset () และ empty () - จะใช้อะไร
คุณช่วยปรับปรุงรูปแบบการเขียนโค้ดของฉันได้ไหม :) ในบางงานฉันต้องตรวจสอบ - ตัวแปรว่างเปล่าหรือมีบางอย่าง ในการแก้ปัญหานี้ฉันมักจะทำสิ่งต่อไปนี้ ตรวจสอบ - ชุดตัวแปรนี้หรือไม่? หากตั้งไว้ - ฉันตรวจสอบ - ว่างหรือไม่? <?php $var = '23'; if (isset($var)&&!empty($var)){ echo 'not empty'; }else{ echo 'is not set or empty'; } ?> และฉันมีคำถาม - ฉันควรใช้ isset () ก่อนว่าง () - จำเป็นหรือไม่? เทีย!
105 php 

16
ฉันจะเรียกใช้สคริปต์ PHP ในพื้นหลังหลังจากส่งแบบฟอร์มได้อย่างไร
ปัญหา ฉันมีแบบฟอร์มที่เมื่อส่งแล้วจะเรียกใช้โค้ดพื้นฐานเพื่อประมวลผลข้อมูลที่ส่งและแทรกลงในฐานข้อมูลเพื่อแสดงบนเว็บไซต์แจ้งเตือน นอกจากนี้ฉันมีรายชื่อผู้ที่สมัครรับการแจ้งเตือนเหล่านี้ทางอีเมลและข้อความ SMS รายการนี้เป็นเรื่องเล็กน้อยในขณะนี้ (เพียงแค่ผลักดันประมาณ 150) แต่ก็เพียงพอที่จะทำให้ต้องใช้เวลามากกว่าหนึ่งนาทีในการวนรอบตารางสมาชิกทั้งหมดและส่งอีเมลมากกว่า 150 ฉบับ (อีเมลจะถูกส่งทีละรายการตามที่ผู้ดูแลระบบของเซิร์ฟเวอร์อีเมลของเราร้องขอเนื่องจากนโยบายอีเมลจำนวนมาก) ในช่วงเวลานี้บุคคลที่โพสต์การแจ้งเตือนจะนั่งอยู่ที่หน้าสุดท้ายของแบบฟอร์มเป็นเวลาเกือบหนึ่งนาทีโดยไม่มีการสนับสนุนเชิงบวกว่ามีการโพสต์การแจ้งเตือน สิ่งนี้นำไปสู่ปัญหาที่อาจเกิดขึ้นอื่น ๆ ทั้งหมดที่มีทางแก้ไขที่เป็นไปได้ซึ่งฉันรู้สึกว่าน้อยกว่าอุดมคติ ขั้นแรกผู้โพสต์อาจคิดว่าเซิร์ฟเวอร์ทำงานช้าและคลิกปุ่ม "ส่ง" อีกครั้งทำให้สคริปต์เริ่มต้นใหม่หรือทำงานสองครั้ง ฉันสามารถแก้ปัญหานี้ได้โดยใช้ JavaScript เพื่อปิดใช้งานปุ่มและแทนที่ข้อความเพื่อพูดบางอย่างเช่น 'กำลังประมวลผล ... ' อย่างไรก็ตามสิ่งนี้น้อยกว่าที่เหมาะสมเนื่องจากผู้ใช้จะยังคงติดอยู่บนหน้าสำหรับความยาวของการเรียกใช้สคริปต์ (นอกจากนี้หากปิดใช้งาน JavaScript ปัญหานี้ยังคงมีอยู่) ประการที่สองผู้โพสต์อาจปิดแท็บหรือเบราว์เซอร์ก่อนเวลาอันควรหลังจากส่งแบบฟอร์ม สคริปต์จะทำงานบนเซิร์ฟเวอร์ต่อไปจนกว่าจะพยายามเขียนกลับไปยังเบราว์เซอร์อย่างไรก็ตามหากผู้ใช้เรียกดูหน้าใด ๆ ภายในโดเมนของเรา (ในขณะที่สคริปต์ยังทำงานอยู่) เบราว์เซอร์จะหยุดการโหลดหน้าจนกว่าสคริปต์จะสิ้นสุดลง . (สิ่งนี้จะเกิดขึ้นก็ต่อเมื่อปิดแท็บหรือหน้าต่างของเบราว์เซอร์ไม่ใช่ทั้งแอปพลิเคชันเบราว์เซอร์) ถึงกระนั้นก็ยังน้อยกว่าที่เหมาะสม (เป็นไปได้) วิธีแก้ไข ฉันตัดสินใจว่าต้องการแยกส่วน "อีเมล" ของสคริปต์ออกเป็นไฟล์แยกต่างหากที่ฉันสามารถโทรได้หลังจากโพสต์การแจ้งเตือนแล้ว ตอนแรกฉันคิดว่าจะวางสิ่งนี้ไว้ในหน้ายืนยันหลังจากโพสต์การแจ้งเตือนสำเร็จแล้ว อย่างไรก็ตามผู้ใช้จะไม่ทราบว่าสคริปต์นี้กำลังทำงานอยู่และจะไม่ปรากฏความผิดปกติใด ๆ สคริปต์นี้ไม่สามารถล้มเหลว แต่ถ้าฉันสามารถเรียกใช้สคริปต์นี้เป็นกระบวนการพื้นหลังได้ล่ะ? คำถามของฉันคือ: ฉันจะเรียกใช้สคริปต์ PHP …

13
ดาวน์โหลดต่อเมื่อใช้ PHP เพื่อส่งไฟล์?
เราใช้สคริปต์ PHP สำหรับการดาวน์โหลดไฟล์ทันเนลเนื่องจากเราไม่ต้องการเปิดเผยเส้นทางที่แน่นอนของไฟล์ที่ดาวน์โหลดได้: header("Content-Type: $ctype"); header("Content-Length: " . filesize($file)); header("Content-Disposition: attachment; filename=\"$fileName\""); readfile($file); น่าเสียดายที่เราสังเกตเห็นว่าการดาวน์โหลดที่ส่งผ่านสคริปต์นี้ไม่สามารถดำเนินการต่อโดยผู้ใช้ปลายทางได้ มีวิธีใดบ้างที่จะรองรับการดาวน์โหลดต่อด้วยโซลูชันที่ใช้ PHP ดังกล่าว

7
รักษาเส้นแบ่งจาก TextArea เมื่อเขียนถึง MySQL
ฉันใช้ textarea เพื่อให้ผู้ใช้ป้อนความคิดเห็น อย่างไรก็ตามหากผู้ใช้เข้าสู่บรรทัดใหม่บรรทัดใหม่จะไม่ปรากฏขึ้นเมื่อมีการส่งออก มีวิธีใดบ้างที่จะทำให้เส้นแบ่งอยู่ได้ มีความคิดอย่างไรที่จะรักษาเส้นแบ่ง?
105 php  mysql  html 

11
สตริงตัวเลขเป็นคีย์อาร์เรย์ใน PHP
เป็นไปได้หรือไม่ที่จะใช้สตริงตัวเลขเช่น"123"คีย์ในอาร์เรย์ PHP โดยไม่ต้องแปลงเป็นจำนวนเต็ม $blah = array('123' => 1); var_dump($blah); พิมพ์ array(1) { [123]=> int(1) } ฉันต้องการ array(1) { ["123"]=> int(1) }
105 php 

17
วิธีตรวจสอบว่าเปิดใช้งาน mod_rewrite บนเซิร์ฟเวอร์หรือไม่
ฉันกำลังใช้โฮสติ้งที่มีLightspeedเซิร์ฟเวอร์ โฮสติ้งแจ้งว่าmod_rewriteเปิดใช้งานแล้ว แต่ฉันไม่สามารถใช้งานสคริปต์ได้ที่นั่น เมื่อใดก็ตามที่ฉันพยายามเข้าถึง URL มันจะส่งกลับ404 - not found page ฉันใส่รหัสเดียวกันที่เซิร์ฟเวอร์อื่นซึ่งทำงานกับ Apache มันทำงานตรงนั้น ดังนั้นฉันเดาว่ามันเป็นปัญหา.htaccessและmod_rewrite แต่ฝ่ายสนับสนุนโฮสติ้งยังคงยืนยันกับฉันว่า mod_rewrite ของพวกเขาเปิดอยู่ดังนั้นฉันจึงอยากทราบว่าจะตรวจสอบได้อย่างไรว่าเปิดใช้งานจริงหรือไม่ ผมลองเช็คดูphpinfo()แล้วแต่โชคไม่เจอที่mod_rewriteนั่นเป็นเพราะใช้งานอยู่lightspeedหรือเปล่า? มีวิธีใดในการตรวจสอบ? กรุณาช่วยฉันออกไป. ขอบคุณ. FYI:.htaccessรหัสของฉันคือ Options -Indexes <IfModule mod_rewrite.c> DirectoryIndex index.php RewriteEngine on RewriteCond $1 !^(index\.php|assets|robots\.txt|favicon\.ico) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ ./index.php/$1 [L,QSA] </IfModule> ฉันพยายามเช่นนี้ด้วย DirectoryIndex index.php RewriteEngine on RewriteCond …

17
วันที่เพิ่มขึ้นหนึ่งเดือน
สมมติว่าฉันมีวันที่ในรูปแบบต่อไปนี้: 2010-12-11 (ปี - จันทร์ - วัน) ด้วย PHP ฉันต้องการเพิ่มวันที่ทีละหนึ่งเดือนและฉันต้องการให้ปีเพิ่มขึ้นโดยอัตโนมัติหากจำเป็น (เช่นเพิ่มจากธันวาคม 2012 ถึงมกราคม 2013) ความนับถือ.
105 php  date 

20
PHP json_decode () คืนค่า NULL ด้วย JSON ที่ถูกต้อง?
ฉันมีวัตถุ JSON นี้เก็บไว้ในไฟล์ข้อความธรรมดา: { "MySQL": { "Server": "(server)", "Username": "(user)", "Password": "(pwd)", "DatabaseName": "(dbname)" }, "Ftp": { "Server": "(server)", "Username": "(user)", "Password": "(pwd)", "RootFolder": "(rf)" }, "BasePath": "../../bin/", "NotesAppPath": "notas", "SearchAppPath": "buscar", "BaseUrl": "http:\/\/montemaiztusitio.com.ar", "InitialExtensions": [ "nem.mysqlhandler", "nem.string", "nem.colour", "nem.filesystem", "nem.rss", "nem.date", "nem.template", "nem.media", "nem.measuring", "nem.weather", "nem.currency" ], "MediaPath": "media", …
105 php  json  null 

8
ยอมรับฟังก์ชันเป็นพารามิเตอร์ใน PHP
ฉันสงสัยว่าเป็นไปได้หรือไม่ที่จะส่งฟังก์ชันเป็นพารามิเตอร์ใน PHP ฉันต้องการบางอย่างเช่นเมื่อคุณเขียนโปรแกรมใน JS: object.exampleMethod(function(){ // some stuff to execute }); สิ่งที่ฉันต้องการคือเรียกใช้ฟังก์ชันนั้นที่ใดที่หนึ่งใน exampleMethod เป็นไปได้ใน PHP หรือไม่?
105 php  function 

11
วิธีตรวจสอบว่าวัตถุว่างเปล่าใน PHP?
วิธีค้นหาว่าวัตถุว่างเปล่าหรือไม่ใน PHP ต่อไปนี้เป็นรหัสที่$objเก็บข้อมูล XML ฉันจะตรวจสอบได้อย่างไรว่าว่างหรือไม่? รหัสของฉัน: $obj = simplexml_load_file($url);
105 php  object 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.