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

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

8
ตรวจสอบว่าค่า isset และ null
ฉันต้องการตรวจสอบว่าค่าถูกกำหนดให้เป็นอะไรหรือไม่รวมถึง null ด้วย ถือว่าเป็นโมฆะเป็นค่าที่ไม่ได้กำหนดและผลตอบแทนisset falseใช้ตัวอย่างต่อไปนี้: $foo = null; if(isset($foo)) // returns false if(isset($bar)) // returns false if(isset($foo) || is_null($foo)) // returns true if(isset($bar) || is_null($bar)) // returns true, raises a notice โปรดทราบว่าไม่ได้$barกำหนด ฉันต้องหาเงื่อนไขที่ตรงตามสิ่งต่อไปนี้: if(something($bar)) // returns false; if(something($foo)) // returns true; ความคิดใด ๆ ?
90 php  null  isset 

17
นับจำนวนบรรทัดของไฟล์ข้อความได้อย่างมีประสิทธิภาพ (200mb +)
ฉันเพิ่งพบว่าสคริปต์ของฉันทำให้ฉันมีข้อผิดพลาดร้ายแรง: Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 440 bytes) in C:\process_txt.php on line 109 บรรทัดนั้นคือ: $lines = count(file($path)) - 1; ฉันคิดว่ามันมีปัญหาในการโหลดไฟล์ลงใน memeory และการนับจำนวนบรรทัดมีวิธีที่มีประสิทธิภาพมากกว่านี้ไหมที่ฉันสามารถทำได้โดยไม่ต้องมีปัญหาเรื่องหน่วยความจำ ไฟล์ข้อความที่ฉันต้องนับจำนวนบรรทัดสำหรับช่วงตั้งแต่ 2MB ถึง 500MB บางทีกิ๊ก ขอบคุณสำหรับความช่วยเหลือใด ๆ

11
Laravel Middleware ส่งคืนตัวแปรไปยังคอนโทรลเลอร์
ฉันกำลังดำเนินการตรวจสอบสิทธิ์ของผู้ใช้เพื่อตรวจสอบว่าพวกเขาสามารถดูเพจได้หรือไม่ สิ่งนี้เกี่ยวข้องกับการส่งคำขอผ่านมิดเดิลแวร์ก่อน ปัญหาที่ฉันมีคือฉันกำลังทำสำเนาแบบสอบถามฐานข้อมูลเดียวกันในมิดเดิลแวร์และในคอนโทรลเลอร์ก่อนที่จะส่งคืนข้อมูลไปยังมุมมองนั้นเอง นี่คือตัวอย่างของการตั้งค่า - route.php Route::get('pages/{id}', [ 'as' => 'pages', 'middleware' => 'pageUser' 'uses' => 'PagesController@view' ]); - PageUserMiddleware.php (คลาส PageUserMiddleware) public function handle($request, Closure $next) { //get the page $pageId = $request->route('id'); //find the page with users $page = Page::with('users')->where('id', $pageId)->first(); //check if the logged in user exists …



5
การเพิ่มรายการไปยังอาร์เรย์ที่เชื่อมโยง
//go through each question foreach($file_data as $value) { //separate the string by pipes and place in variables list($category, $question) = explode('|', $value); //place in assoc array $data = array($category => $question); print_r($data); } สิ่งนี้ใช้ไม่ได้เนื่องจากแทนที่ค่าของข้อมูล ฉันจะเพิ่มค่าเชื่อมโยงแต่ละลูปได้อย่างไร $file_dataคืออาร์เรย์ของข้อมูลที่มีขนาดไดนามิก
90 php 

9
เปลี่ยนจากกรอบเป็นไม่มีกรอบ [ปิด]
ปิด . คำถามนี้เป็นคำถามความคิดเห็นตาม ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบได้ด้วยข้อเท็จจริงและการอ้างอิงโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันพัฒนา PHP มาประมาณ 8 ปีเป็นงานอดิเรก ในปี 2009 ฉันได้รับ Codeigniter และตั้งแต่นั้นมาฉันก็ไม่ได้รับการพัฒนาโครงการเดียว ฉันพบว่ามันทำให้ฉันช้าลงในการพยายามหาวิธีแก้ไขให้ทำงานในแบบที่ฉันต้องการเมื่อไหร่ที่ฉันทำงานใน PHP บริสุทธิ์ฉันก็รู้หรือฉันจะสามารถค้นหาตัวอย่างข้อมูลได้อย่างรวดเร็ว ฉันได้ลองใช้ CodeIgniter, Kohana และ Symfony แล้ว ฉันชอบความสะดวกในการใช้งาน (และฉันก็เริ่มใช้หลักคำสอนเป็น ORM ซึ่งเร่งความเร็วในการทำงานฐานข้อมูลของฉันอย่างมาก) แต่ฉันพบว่าโครงการใช้เวลา 3-4 เท่าของเวลาที่ใช้ใน PHP บริสุทธิ์ ฉันเบื่อและหงุดหงิดเมื่อไม่สามารถหาวิธีแก้ปัญหาที่เคยแก้ไขด้วย PHP ล้วน ๆ มีใครย้อนกลับไปจากการใช้กรอบไปสู่แนวทางไร้กรอบ มีอะไรที่เหมือนกับกรอบการรักษาความปลอดภัยขั้นพื้นฐาน (ป้องกัน XSS, กรองข้อมูลที่โพสต์, จัดเตรียมฟังก์ชันการทำความสะอาดสำหรับใช้กับฐานข้อมูล) หรือไม่? ฉันคิดว่าสิ่งนั้นจะเป็นประโยชน์ต่อฉันมากกว่ากรอบงานเต็มรูปแบบ ฉันคิดว่าการเรียนรู้ที่จะทำงานกับเฟรมเวิร์กนั้นสอนฉันได้มากมาย …

14
จะหลีกเลี่ยงสตริงใน SQL Server โดยใช้ PHP ได้อย่างไร
ฉันกำลังมองหาทางเลือกอื่นmysql_real_escape_string()สำหรับ SQL Server เป็นaddslashes()ตัวเลือกที่ดีที่สุดของฉันหรือมีฟังก์ชันทางเลือกอื่นที่สามารถใช้ได้หรือไม่? อีกทางเลือกหนึ่งmysql_error()ก็จะมีประโยชน์เช่นกัน

11
PHP รับวันพรุ่งนี้จากวันที่
ฉันมีวัน PHP ในรูปแบบของและฉันต้องการที่จะได้รับวันพรุ่งนี้ในรูปแบบเดียวกันดังนั้นสำหรับตัวอย่างเช่น2013-01-222013-01-23 เป็นไปได้อย่างไรกับ PHP?
89 php  date  datetime  strtotime 

5
php is_function () เพื่อตรวจสอบว่าตัวแปรเป็นฟังก์ชันหรือไม่
ผมรู้สึกตื่นเต้นสวยที่จะอ่านเกี่ยวกับฟังก์ชั่นที่ไม่ระบุชื่อใน PHP ซึ่งช่วยให้คุณสามารถประกาศตัวแปรที่มีฟังก์ชั่นง่ายกว่าที่คุณจะทำอย่างไรกับcreate_function ตอนนี้ฉันสงสัยว่าฉันมีฟังก์ชันที่ส่งผ่านตัวแปรฉันจะตรวจสอบได้อย่างไรว่าเป็นฟังก์ชันหรือไม่ ยังไม่มีฟังก์ชัน is_function () และเมื่อฉันทำ var_dump ของตัวแปรที่เป็นฟังก์ชัน :: $func = function(){ echo 'asdf'; }; var_dump($func); ฉันได้รับสิ่งนี้: object(Closure)#8 (0) { } มีความคิดเกี่ยวกับวิธีตรวจสอบว่าเป็นฟังก์ชันหรือไม่?

3
การตั้งค่าภาษา PHPMyAdmin [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน9 ปีที่ผ่านมา ปรับปรุงคำถามนี้ อินเทอร์เฟซผู้ใช้สำหรับ phpmyadmin แสดงเป็นภาษาเยอรมันด้วยเหตุผลบางประการและฉันต้องการเปลี่ยนเป็นภาษาอังกฤษ แต่ไม่รู้ว่าจะทำอย่างไร ฉันติดตั้ง xampp ล่าสุด ขอบคุณ
89 php  phpmyadmin 

3
เชื่อถือ $ _SERVER ['REMOTE_ADDR'] ได้หรือไม่
เชื่อถือได้ปลอดภัย$_SERVER['REMOTE_ADDR']หรือไม่? สามารถทดแทนได้โดยการเปลี่ยนส่วนหัวของคำขอหรืออะไรทำนองนั้น? มันปลอดภัยไหมที่จะเขียนอะไรแบบนั้น? if ($_SERVER['REMOTE_ADDR'] == '222.222.222.222') { // my ip address $grant_all_admin_rights = true; }

5
PHP 7 อินเทอร์เฟซการบอกใบ้ประเภทส่งคืนและตัวเอง
อัปเดต : ขณะนี้ PHP 7.4 รองรับความแปรปรวนร่วมและความแตกต่างซึ่งแก้ไขปัญหาสำคัญที่เกิดขึ้นในคำถามนี้ ฉันพบปัญหาบางอย่างกับการใช้คำใบ้ประเภทการส่งคืนใน PHP 7 ความเข้าใจของฉันคือการบอกใบ้: selfหมายความว่าคุณตั้งใจให้คลาสการใช้งานกลับมาเอง ดังนั้นฉันจึงใช้: selfอินเทอร์เฟซเพื่อระบุสิ่งนั้น แต่เมื่อฉันพยายามใช้อินเทอร์เฟซจริงฉันพบข้อผิดพลาดเกี่ยวกับความเข้ากันได้ ต่อไปนี้เป็นการสาธิตง่ายๆเกี่ยวกับปัญหาที่ฉันพบ: interface iFoo { public function bar (string $baz) : self; } class Foo implements iFoo { public function bar (string $baz) : self { echo $baz . PHP_EOL; return $this; } } (new Foo ()) …


4
PHP simpleXML จะบันทึกไฟล์ในรูปแบบได้อย่างไร?
ฉันกำลังพยายามเพิ่มข้อมูลบางอย่างในไฟล์ XML ที่มีอยู่โดยใช้ SimpleXML ของ PHP ปัญหาคือมันเพิ่มข้อมูลทั้งหมดในบรรทัดเดียว: <name>blah</name><class>blah</class><area>blah</area> ... และอื่น ๆ ทั้งหมดในบรรทัดเดียว แนะนำตัวแบ่งบรรทัดอย่างไร? ฉันจะทำให้มันเป็นแบบนี้ได้อย่างไร? <name>blah</name> <class>blah</class> <area>blah</area> ฉันกำลังใช้asXML()ฟังก์ชัน ขอบคุณ.

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